The fluidsynth .DLL are now dynamically loaded like PCap, the emulator can now even when said .DLL is not present;
Fixed a tiny bug in the Cirrus Logic blitter; Adding DEV_BRANCH=y parameter to make now compiles the Cirrus Logic emulation code *and* the Nvidia Riva emulation code; The Sierra SC1502x RAMDAC emulation code is now correctly named as such; The makefile now knows the dependencies for a lot more files (with the unfortunate effect that 86Box.exe is now 8 MB after stripping); win_setting.c no longer includes scsi_buslogic.c - that was a leftover of long gone code.
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
#
|
||||
# Modified Makefile for Win32 (MinGW32) environment.
|
||||
#
|
||||
# Version: @(#)Makefile.mingw 1.0.32 2017/07/27
|
||||
# Version: @(#)Makefile.mingw 1.0.33 2017/08/08
|
||||
#
|
||||
# Authors: Miran Grca, <mgrca8@gmail.com>
|
||||
# Fred N. van Kempen, <decwiz@yahoo.com>
|
||||
@@ -127,8 +127,19 @@ endif
|
||||
|
||||
ifeq ($(X64), y)
|
||||
PLATCG = codegen_x86-64.o
|
||||
CGOPS = codegen_ops_x86-64.h
|
||||
VCG = vid_voodoo_codegen_x86-64.h
|
||||
else
|
||||
PLATCG = codegen_x86.o
|
||||
CGOPS = codegen_ops_x86.h
|
||||
VCG = vid_voodoo_codegen_x86.h
|
||||
endif
|
||||
|
||||
|
||||
ifeq ($(DEV_BRANCH), y)
|
||||
DBFLAGS = -DDEV_BRANCH
|
||||
else
|
||||
DBFLAGS =
|
||||
endif
|
||||
|
||||
|
||||
@@ -233,9 +244,9 @@ VIDOBJ = video.o \
|
||||
vid_ati_eeprom.o vid_ati18800.o vid_ati28800.o \
|
||||
vid_ati68860_ramdac.o vid_ati_mach64.o \
|
||||
vid_ics2595.o \
|
||||
vid_sc1502x_ramdac.o \
|
||||
vid_sdac_ramdac.o \
|
||||
vid_stg_ramdac.o \
|
||||
vid_unk_ramdac.o \
|
||||
vid_wy700.o \
|
||||
vid_voodoo.o \
|
||||
vid_pcjr.o vid_ps1_svga.o \
|
||||
@@ -250,8 +261,9 @@ WINOBJ = win.o \
|
||||
win_iodev.o win_joystick.o win_midi.o \
|
||||
win_settings.o win_deviceconfig.o win_joystickconfig.o \
|
||||
86Box.res
|
||||
ifdef DEV_BRANCH
|
||||
DEVBRANCHOBJ = vid_nv_riva128.o
|
||||
ifeq ($(DEV_BRANCH), y)
|
||||
DEVBRANCHOBJ = vid_cl_gd.o vid_cl_gd_blit.o vid_cl_ramdac.o \
|
||||
vid_nv_riva128.o
|
||||
endif
|
||||
OBJ = $(MAINOBJ) $(CPUOBJ) $(SYSOBJ) $(DEVOBJ) $(USBOBJ) \
|
||||
$(NETOBJ) $(SCSIOBJ) $(SNDOBJ) $(VIDOBJ) $(WINOBJ) \
|
||||
@@ -263,7 +275,7 @@ LIBS = -mwindows \
|
||||
-lopenal.dll \
|
||||
-lddraw -ldinput8 -ldxguid -ld3d9 -ld3dx9 \
|
||||
-lcomctl32 -lkernel32 -lwsock32 -lwinmm -liphlpapi -lpsapi \
|
||||
-static -lstdc++ -lgcc -lfluidsynth -lfluidsynth.dll
|
||||
-static -lstdc++ -lgcc
|
||||
|
||||
|
||||
# Build rules.
|
||||
@@ -313,9 +325,9 @@ pcap_if.res: pcap_if.rc
|
||||
|
||||
|
||||
# Module dependencies.
|
||||
acer386sx.o: ibm.h cpu/cpu.h io.h device.h model.h
|
||||
|
||||
acerm3a.o: ibm.h cpu/cpu.h io.h device.h model.h
|
||||
# /
|
||||
acer386sx.o: ibm.h cpu/cpu.h io.h device.h model.h
|
||||
|
||||
ali1429.o: ibm.h cpu/cpu.h io.h mem.h device.h model.h
|
||||
|
||||
@@ -326,6 +338,10 @@ bugger.o: ibm.h io.h bugger.h
|
||||
cdrom.o: 86box.h cdrom.h ibm.h ide.h piix.h scsi.h timer.h \
|
||||
win/plat_iodev.h
|
||||
|
||||
cdrom_dosbox.o: cdrom_dosbox.h
|
||||
|
||||
cdrom_image.o: config.h cdrom_dosbox.h cdrom.h cdrom_image.h cdrom_null.h
|
||||
|
||||
cdrom_ioctl.o: ibm.h cdrom.h cdrom_ioctl.h scsi.h
|
||||
|
||||
cdrom_null.o: ibm.h cdrom.h cdrom_ioctl.h
|
||||
@@ -337,7 +353,7 @@ config.o: cdrom.h config.h device.h disc.h fdc.h fdd.h ibm.h \
|
||||
network/network.h nvr.h scsi.h win/plat_joystick.h \
|
||||
win/plat_midi.h sound/snd_dbopl.h sound/snd_mpu401.h \
|
||||
sound/snd_opl.h sound/sound.h video/video.h win/win.h \
|
||||
win/win_language.h
|
||||
win/resource.h win/win_language.h
|
||||
|
||||
device.o: ibm.h cpu/cpu.h config.h device.h model.h sound/sound.h
|
||||
|
||||
@@ -357,6 +373,9 @@ disc_td0.o: ibm.h disc.h disc_td0.h fdc.h fdd.h
|
||||
|
||||
dma.o: ibm.h cpu/x86.h mem.h io.h dma.h
|
||||
|
||||
esdi_at.o: ibm.h device.h hdd_image.h io.h mem.h pic.h rom.h timer.h \
|
||||
esdi_at.h
|
||||
|
||||
fdc.o: ibm.h disc.h dma.h fdc.h fdd.h io.h pic.h timer.h
|
||||
|
||||
fdc37c665.o: ibm.h disc.h fdc.h fdd.h ide.h io.h lpt.h serial.h \
|
||||
@@ -374,8 +393,8 @@ gameport.o: ibm.h cpu/cpu.h device.h io.h timer.h gameport.h \
|
||||
joystick_ch_flightstick_pro.h joystick_standard.h \
|
||||
joystick_sw_pad.h joystick_tm_fcs.h plat_joystick.h
|
||||
|
||||
hdd.o: ibm.h cpu/cpu.h device.h hdd.h model.h hdd_esdi.h \
|
||||
mfm_at.h mfm_xebec.h xtide.h
|
||||
hdd.o: ibm.h cpu/cpu.h device.h hdd.h model.h esdi_at.h \
|
||||
hdd_esdi.h mfm_at.h mfm_xebec.h xtide.h
|
||||
|
||||
hdd_image.o: ibm.h ide.h hdd_image.h
|
||||
|
||||
@@ -396,8 +415,6 @@ i430vx.o: ibm.h cpu/cpu.h io.h mem.h pci.h device.h model.h
|
||||
|
||||
i440fx.o: ibm.h cpu/cpu.h io.h mem.h pci.h device.h model.h
|
||||
|
||||
i82335.o: ibm.h io.h mem.h
|
||||
|
||||
ide.o: 86box.h cdrom.h hdd_image.h ibm.h io.h pic.h timer.h cdrom.h scsi.h ide.h
|
||||
|
||||
intel.o: ibm.h cpu/cpu.h io.h mem.h pit.h timer.h intel.h
|
||||
@@ -458,7 +475,7 @@ mfm_xebec.o: ibm.h device.h dma.h hdd_image.h io.h mem.h pic.h rom.h timer.h mfm
|
||||
model.o: ibm.h io.h mem.h rom.h device.h model.h cpu/cpu.h \
|
||||
mouse.h cdrom.h disc.h dma.h fdc.h \
|
||||
fdc37c665.h fdc37c669.h fdc37c932fr.h \
|
||||
gameport.h i82335.h ide.h intel.h intel_flash.h \
|
||||
gameport.h ide.h intel.h intel_flash.h \
|
||||
keyboard_amstrad.h keyboard_at.h keyboard_olim24.h \
|
||||
keyboard_pcjr.h keyboard_xt.h lpt.h mem.h memregs.h \
|
||||
nmi.h nvr.h pc87306.h pci.h pic.h piix.h pit.h ps2_mca.h \
|
||||
@@ -469,7 +486,7 @@ model.o: ibm.h io.h mem.h rom.h device.h model.h cpu/cpu.h \
|
||||
|
||||
mouse.o: ibm.h cpu/cpu.h device.h model.h mouse.h keyboard_olim24.h
|
||||
|
||||
mouse_bus.o: ibm.h io.h pic.h mouse.h
|
||||
mouse_bus.o: ibm.h io.h pic.h timer.h mouse.h
|
||||
|
||||
mouse_ps2.o: ibm.h keyboard_at.h mouse.h plat_mouse.h
|
||||
|
||||
@@ -540,6 +557,8 @@ scsi_disk.o: 86box.h cdrom.h hdd_image.h ibm.h ide.h piix.h scsi.h \
|
||||
|
||||
serial.o: ibm.h io.h pic.h timer.h serial.h plat_serial.h
|
||||
|
||||
serial_old.o: ibm.h io.h mouse.h pic.h serial.h timer.h
|
||||
|
||||
sio.o: ibm.h cdrom.h disc.h dma.h fdc.h keyboard_at.h ide.h \
|
||||
io.h mem.h pci.h sio.h
|
||||
|
||||
@@ -549,6 +568,8 @@ sis50x.o: ibm.h device.h io.h mem.h pci.h sis50x.h
|
||||
|
||||
sis85c471.o: ibm.h ide.h disc.h fdc.h fdd.h io.h lpt.h serial.h sis85c471.h
|
||||
|
||||
superio_detect.o: ibm.h io.h disc.h fdd.h fdc.h superio_detect.h
|
||||
|
||||
tandy_eeprom.o: ibm.h device.h mem.h io.h rom.h tandy_eeprom.h
|
||||
|
||||
tandy_rom.o: ibm.h device.h io.h mem.h rom.h tandy_rom.h
|
||||
@@ -563,5 +584,233 @@ wd76c10.o: ibm.h disc.h fdc.h io.h mem.h serial.h wd76c10.h
|
||||
|
||||
xtide.o: ibm.h io.h mem.h rom.h device.h ide.h xtide.h
|
||||
|
||||
# cpu/
|
||||
386.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x87.h mem.h disc.h fdc.h pic.h timer.h cpu/386_common.h
|
||||
|
||||
386_dynarec.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x86_ops.h cpu/x87.h mem.h cpu/codegen.h disc.h fdc.h pic.h timer.h cpu/386_common.h \
|
||||
cpu/x86_ops.h cpu/x86seg.h cpu/x86_ops_arith.h cpu/x86_ops_atomic.h cpu/x86_ops_bcd.h cpu/x86_ops_bit.h \
|
||||
cpu/x86_ops_bitscan.h cpu/x86_ops_call.h cpu/x86_ops_flag.h cpu/x86_ops_fpu.h cpu/x86_ops_inc_dec.h cpu/x86_ops_int.h \
|
||||
cpu/x86_ops_io.h cpu/x86_ops_jump.h cpu/x86_ops_misc.h \
|
||||
cpu/x87_ops_arith.h cpu/x87_ops_misc.h cpu/x87_ops_loadstore.h \
|
||||
cpu/x87_ops.h cpu/x86_ops_i686.h cpu/x86_ops_mmx.h \
|
||||
cpu/x86_ops_mmx_arith.h cpu/x86_ops_mmx_cmp.h cpu/x86_ops_mmx_logic.h cpu/x86_ops_mmx_pack.h cpu/x86_ops_mmx_shift.h \
|
||||
cpu/x86_ops_mov.h cpu/x86_ops_mov_ctrl.h cpu/x86_ops_mov_seg.h cpu/x86_ops_movx.h cpu/x86_ops_msr.h cpu/x86_ops_mul.h \
|
||||
cpu/x86_ops_pmode.h cpu/x86_ops_prefix.h cpu/x86_ops_rep.h cpu/x86_ops_ret.h cpu/x86_ops_set.h cpu/x86_ops_shift.h \
|
||||
cpu/x86_ops_stack.h cpu/x86_ops_string.h cpu/x86_ops_xchg.h \
|
||||
cpu/386_ops.h
|
||||
|
||||
386_dynarec_ops.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x86_ops.h cpu/x87.h cpu/x86_flags.h mem.h cpu/codegen.h pic.h cpu/386_common.h \
|
||||
cpu/x86_ops.h cpu/x86seg.h cpu/x86_ops_arith.h cpu/x86_ops_atomic.h cpu/x86_ops_bcd.h cpu/x86_ops_bit.h \
|
||||
cpu/x86_ops_bitscan.h cpu/x86_ops_call.h cpu/x86_ops_flag.h cpu/x86_ops_fpu.h cpu/x86_ops_inc_dec.h cpu/x86_ops_int.h \
|
||||
cpu/x86_ops_io.h cpu/x86_ops_jump.h cpu/x86_ops_misc.h \
|
||||
cpu/x87_ops_arith.h cpu/x87_ops_misc.h cpu/x87_ops_loadstore.h \
|
||||
cpu/x87_ops.h cpu/x86_ops_i686.h cpu/x86_ops_mmx.h \
|
||||
cpu/x86_ops_mmx_arith.h cpu/x86_ops_mmx_cmp.h cpu/x86_ops_mmx_logic.h cpu/x86_ops_mmx_pack.h cpu/x86_ops_mmx_shift.h \
|
||||
cpu/x86_ops_mov.h cpu/x86_ops_mov_ctrl.h cpu/x86_ops_mov_seg.h cpu/x86_ops_movx.h cpu/x86_ops_msr.h cpu/x86_ops_mul.h \
|
||||
cpu/x86_ops_pmode.h cpu/x86_ops_prefix.h cpu/x86_ops_rep.h cpu/x86_ops_ret.h cpu/x86_ops_set.h cpu/x86_ops_shift.h \
|
||||
cpu/x86_ops_stack.h cpu/x86_ops_string.h cpu/x86_ops_xchg.h \
|
||||
cpu/386_ops.h
|
||||
|
||||
808x.o: ibm.h cpu/cpu.h cpu/x86.h keyboard.h mem.h nmi.h pic.h scsi.h timer.h
|
||||
|
||||
codegen.o: ibm.h cpu/x86_ops.h mem.h cpu/codegen.h
|
||||
|
||||
codegen_ops.o: ibm.h mem.h cpu/x86.h cpu/x86_ops.h cpu/x86_flags.h cpu/x87.h cpu/386_common.h cpu/cpu.h cpu/codegen.h cpu/codegen_ops.h \
|
||||
cpu/$(CGOPS) cpu/codegen_ops_arith.h cpu/codegen_ops_fpu.h cpu/codegen_ops_jump.h cpu/codegen_ops_logic.h cpu/codegen_ops_misc.h \
|
||||
cpu/codegen_ops_mmx.h cpu/codegen_ops_mov.h cpu/codegen_ops_shift.h cpu/codegen_ops_stack.h cpu/codegen_ops_xchg.h
|
||||
|
||||
codegen_timing_486.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x87_ops.h cpu/x87.h mem.h cpu/codegen.h cpu/codegen_ops.h cpu/codegen_timing_common.h
|
||||
|
||||
codegen_timing_686.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x87_ops.h cpu/x87.h mem.h cpu/codegen.h cpu/codegen_timing_common.h
|
||||
|
||||
codegen_timing_common.o: ibm.h cpu/codegen_timing_common.h
|
||||
|
||||
codegen_timing_pentium.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x87_ops.h cpu/x87.h mem.h cpu/codegen.h cpu/codegen_ops.h cpu/codegen_timing_common.h
|
||||
|
||||
codegen_timing_winchip.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x87_ops.h cpu/x87.h mem.h cpu/codegen.h cpu/codegen_ops.h cpu/codegen_timing_common.h
|
||||
|
||||
codegen_x86.o: ibm.h cpu/cpu.h cpu/x86.h cpu/x86_flags.h cpu/x86_ops.h cpu/x87.h mem.h cpu/386_common.h cpu/codegen.h cpu/codegen_ops.h \
|
||||
cpu/codegen_ops_x86.h
|
||||
|
||||
codegen_x86-64.o: ibm.h mem.h cpu/cpu.h cpu/x86.h cpu/x86_flags.h cpu/x86_ops.h cpu/x87.h cpu/386_common.h cpu/codegen.h cpu/codegen_ops.h \
|
||||
cpu/codegen_ops_x86-64.h
|
||||
|
||||
cpu.o: ibm.h cpu/cpu.h device.h model.h io.h cpu/x86_ops.h mem.h pci.h cpu/codegen.h
|
||||
|
||||
x86seg.o: ibm.h mem.h nvr.h cpu/x86.h cpu/386.h cpu/386_common.h cpu/cpu.h
|
||||
|
||||
x87.o: ibm.h pic.h cpu/x86.h cpu/x86_flags.h cpu/x86_ops.h cpu/x87.h cpu/386_common.h
|
||||
|
||||
# network/
|
||||
net_ne2000.o: ibm.h io.h mem.h rom.h pci.h pic.h device.h config.h disc_random.h network/network.h network/net_ne2000.h network/bswap.h
|
||||
|
||||
net_pcap.o: ibm.h config.h device.h network/network.h win/plat_dynld.h win/plat_thread.h
|
||||
|
||||
net_slirp.o: network/slirp/slirp.h network/slirp/queue.h ibm.h config.h device.h network/network.h win/plat_thread.h
|
||||
|
||||
network.o: ibm.h device.h network/network.h network/net_ne2000.h win/plat_ui.h
|
||||
|
||||
# video/
|
||||
vid_ati_eeprom.o: ibm.h mem.h rom.h video/vid_ati_eeprom.h
|
||||
|
||||
vid_ati_mach64.o: ibm.h device.h io.h mem.h pci.h rom.h win/plat_thread.h video/video.h video/vid_svga.h video/vid_svga_render.h \
|
||||
video/vid_ati68860_ramdac.h video/vid_ati_eeprom.h video/vid_ics2595.h
|
||||
|
||||
vid_ati18800.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_ati18800.h video/vid_ati_eeprom.h video/vid_svga.h
|
||||
|
||||
vid_ati28800.o: ibm.h io.h mem.h rom.h device.h timer.h video/video.h video/vid_ati28800.h video/vid_ati_eeprom.h video/vid_svga.h \
|
||||
video/vid_svga_render.h
|
||||
|
||||
vid_ati68860_ramdac.o: ibm.h mem.h video/video.h video/vid_svga.h video/vid_ati68860_ramdac.h video/vid_svga_render.h
|
||||
|
||||
vid_cga.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_cga.h video/vid_cga_comp.h win/win_cgapal.h
|
||||
|
||||
vid_cga_comp.o: ibm.h device.h mem.h video/vid_cga.h video/vid_cga_comp.h
|
||||
|
||||
vid_cl_gd.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_svga.h video/vid_svga_render.h video/vid_cl_ramdac.h \
|
||||
video/vid_cl_gd.h video/vid_cl_gd_blit.h
|
||||
|
||||
vid_cl_gd_blit.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_svga.h video/vid_svga_render.h video/vid_cl_ramdac.h \
|
||||
video/vid_cl_gd.h video/vid_cl_gd_blit.h video/vid_cl_gd_vga_rop.h
|
||||
|
||||
vid_cl_gd_ramdac.o: ibm.h mem.h rom.h device.h video/video.h video/vid_svga.h video/vid_cl_ramdac.h video/vid_cl_gd.h \
|
||||
video/vid_cl_gd_blit.h
|
||||
|
||||
vid_colorplus.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_cga.h video/vid_colorplus.h video/vid_cga_comp.h
|
||||
|
||||
vid_ega.o: ibm.h io.h mem.h rom.h timer.h device.h video/video.h video/vid_ega.h video/vid_ega_render.h
|
||||
|
||||
vid_ega_render.o: ibm.h device.h mem.h rom.h video/video.h video/vid_ega.h video/vid_ega_render.h
|
||||
|
||||
vid_et4000.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_svga.h video/vid_sc1502x_ramdac.h video/vid_et4000.h
|
||||
|
||||
vid_et4000w32.o: ibm.h io.h mem.h pci.h rom.h device.h win/plat_thread.h video/video.h video/vid_svga.h video/vid_icd2061.h \
|
||||
video/vid_stg_ramdac.h
|
||||
|
||||
vid_genius.o: ibm.h io.h mem.h rom.h timer.h device.h video/video.h video/vid_genius.h
|
||||
|
||||
vid_hercules.o: ibm.h mem.h io.h timer.h device.h video/video.h video/vid_hercules.h win/win_cgapal.h
|
||||
|
||||
vid_herculesplus.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_herculesplus.h
|
||||
|
||||
vid_icd2061.o: ibm.h video/vid_icd2061.h
|
||||
|
||||
vid_ics2595.o: ibm.h video/vid_ics2595.h
|
||||
|
||||
vid_incolor.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_incolor.h
|
||||
|
||||
vid_mda.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_mda.h win/win_cgapal.h
|
||||
|
||||
vid_nv_riva128.o: ibm.h io.h mem.h pci.h pic.h rom.h timer.h device.h win/plat_thread.h video/video.h video/vid_svga.h \
|
||||
video/vid_svga_render.h
|
||||
|
||||
vid_olivetti_m24.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_olivetti_m24.h
|
||||
|
||||
vid_oti067.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_oti067.h video/vid_svga.h
|
||||
|
||||
vid_paradise.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_paradise.h video/vid_svga.h video/vid_svga_render.h
|
||||
|
||||
vid_pc200.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_cga.h video/vid_pc200.h
|
||||
|
||||
vid_pc1512.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_pc1512.h
|
||||
|
||||
vid_pc1640.o: ibm.h io.h mem.h rom.h timer.h device.h video/video.h video/vid_cga.h video/vid_ega.h video/vid_pc1640.h
|
||||
|
||||
vid_pcjr.o: ibm.h io.h mem.h pic.h timer.h device.h video/video.h video/vid_cga_comp.h video/vid_pcjr.h
|
||||
|
||||
vid_ps1_svga.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_svga.h video/vid_vga.h
|
||||
|
||||
vid_s3.o: ibm.h device.h io.h mem.h pci.h rom.h win/plat_thread.h video/video.h video/vid_s3.h video/vid_svga.h \
|
||||
video/vid_svga_render.h video/vid_sdac_ramdac.h
|
||||
|
||||
vid_s3_virge.o: ibm.h io.h mem.h pci.h rom.h device.h win/plat_thread.h video/video.h video/vid_s3_virge.h video/vid_svga.h \
|
||||
video/vid_svga_render.h
|
||||
|
||||
vid_sc1502x_ramdac.o: ibm.h mem.h video/video.h video/vid_svga.h video/vid_sc1502x_ramdac.h
|
||||
|
||||
vid_sdac_ramdac.o: ibm.h mem.h video/video.h video/vid_svga.h video/vid_sdac_ramdac.h
|
||||
|
||||
vid_stg_ramdac.o: ibm.h mem.h video/video.h video/vid_svga.h video/vid_stg_ramdac.h
|
||||
|
||||
vid_svga.o: ibm.h io.h mem.h rom.h timer.h video/video.h video/vid_svga.h video/vid_svga_render.h
|
||||
|
||||
vid_svga_render.o: ibm.h mem.h video/video.h video/vid_svga.h video/vid_svga_render.h
|
||||
|
||||
vid_tandy.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_tandy.h video/vid_cga_comp.h
|
||||
|
||||
vid_tandysl.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_tandysl.h
|
||||
|
||||
vid_tgui9440.o: ibm.h io.h mem.h pci.h rom.h device.h win/plat_thread.h video/video.h video/vid_svga.h video/vid_svga_render.h \
|
||||
video/vid_tkd8001_ramdac.h video/vid_tgui9440.h
|
||||
|
||||
vid_tkd8001_ramdac.o: ibm.h mem.h video/video.h video/vid_svga.h video/vid_tkd8001_ramdac.h
|
||||
|
||||
vid_tvga.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_svga.h video/vid_svga_render.h video/vid_tkd8001_ramdac.h \
|
||||
video/vid_tvga.h
|
||||
|
||||
vid_vga.o: ibm.h io.h mem.h rom.h device.h video/video.h video/vid_svga.h video/vid_vga.h
|
||||
|
||||
vid_voodoo.o: ibm.h cpu/cpu.h mem.h rom.h pci.h timer.h device.h win/plat_thread.h video/video.h video/vid_svga.h \
|
||||
video/vid_voodoo.h video/vid_voodoo_dither.h video/$(VCG)
|
||||
|
||||
vid_wy700.o: ibm.h io.h mem.h timer.h device.h video/video.h video/vid_wy700.h
|
||||
|
||||
video.o: ibm.h cpu/cpu.h io.h mem.h rom.h config.h device.h timer.h win/plat_thread.h video/video.h video/vid_svga.h \
|
||||
win/resource.h win/win.h win/win_cgapal.h \
|
||||
video/vid_ati18800.h video/vid_ati28800.h video/vid_ati_mach64.h video/vid_cga.h \
|
||||
video/vid_cl_ramdac.h video/vid_cl_gd.h \
|
||||
video/vid_ega.h video/vid_et4000.h video/vid_et4000w32.h video/vid_genius.h video/vid_hercules.h \
|
||||
video/vid_herculesplus.h video/vid_incolor.h video/vid_colorplus.h video/vid_mda.h \
|
||||
video/vid_nv_riva128.h \
|
||||
video/vid_olivetti_m24.h video/vid_oti067.h video/vid_paradise.h video/vid_pc1512.h video/vid_pc1640.h \
|
||||
video/vid_pc200.h video/vid_pcjr.h video/vid_ps1_svga.h video/vid_s3.h video/vid_s3_virge.h video/vid_tandy.h \
|
||||
video/vid_tandysl.h video/vid_tgui9440.h video/vid_tvga.h video/vid_vga.h video/vid_wy700.h
|
||||
|
||||
# win/
|
||||
win.o: 86box.h device.h disc.h fdd.h hdd.h ibm.h cpu/cpu.h mem.h rom.h nvr.h config.h model.h ide.h cdrom.h cdrom_null.h \
|
||||
cdrom_ioctl.h cdrom_image.h scsi.h scsi_disk.h video/video.h video/vid_ega.h mouse.h sound/sound.h sound/snd_dbopl.h \
|
||||
win/plat_keyboard.h win/plat_iodev.h win/plat_mouse.h win/plat_midi.h win/plat_thread.h win/plat_ticks.h win/plat_ui.h \
|
||||
win/resource.h win/win.h win/win_cgapal.h win/win_ddraw.h win/win_d3d.h win/win_language.h
|
||||
|
||||
win_d3d.o: video/video.h win/win.h win/resource.h win/win_d3d.h win/win_cgapal.h
|
||||
|
||||
win_d3d_fs.o: 86box.h video/video.h win/win.h win/resource.h win/win_d3d.h win/win_cgapal.h
|
||||
|
||||
win_ddraw.o: video/video.h win/resource.h win/win_ddraw.h win/win_cgapal.h
|
||||
|
||||
win_ddraw_fs.o: video/video.h win/resource.h win/win_ddraw.h win/win_cgapal.h
|
||||
|
||||
win_ddraw_screenshot.o: video/video.h win/resource.h win/win.h win/win_ddraw.h win/win_language.h
|
||||
|
||||
win_deviceconfig.o: win/plat_midi.h win/resource.h win/win.h win/win_language.h
|
||||
|
||||
win_dynld.o: win/plat_dynld.h win/resource.h ibm.h
|
||||
|
||||
win_iodev.o: ibm.h device.h cdrom.h cdrom_image.h cdrom_ioctl.h cdrom_null.h scsi_disk.h win/plat_iodev.h win/resource.h win/win.h
|
||||
|
||||
win_joystick.o: device.h gameport.h win/plat_joystick.h win/resource.h win/win.h
|
||||
|
||||
win_joystickconfig.o: ibm.h config.h device.h gameport.h win/plat_joystick.h win/resource.h win/win.h
|
||||
|
||||
win_keyboard.o: device.h win/plat_keyboard.h win/resource.h win/win.h
|
||||
|
||||
win_language.o: ibm.h device.h ide.h win/plat_ui.h win/resource.h win/win.h win/win_language.h io.h mem.h rom.h device.h ide.h xtide.h
|
||||
|
||||
win_midi.o: ibm.h config.h sound/midi.h win/plat_midi.h win/resource.h
|
||||
|
||||
win_mouse.o: win/plat_mouse.h win/resource.h win/win.h
|
||||
|
||||
win_opendir.o: ibm.h win/plat_dir.h win/resource.h
|
||||
|
||||
win_serial.o: win/plat_thread.h win/plat_serial.h win/resource.h
|
||||
|
||||
win_settings.o: ibm.h mem.h cpu/cpu.h nvr.h device.h model.h cdrom.h disc.h fdd.h hdd.h ide.h scsi.h network/network.h sound/midi.h \
|
||||
sound/sound.h sound/snd_dbopl.h sound/snd_mpu401.h video/video.h video/vid_voodoo.h gameport.h mouse.h win/plat_midi.h \
|
||||
win/resource.h win/win.h win/win_language.h
|
||||
|
||||
win_status.o: ibm.h mem.h cpu/x86_ops.h cpu/codegen.h device.h win/resource.h win/win.h
|
||||
|
||||
win_video.o: video/video.h win/resource.h win/win_cgapal.h
|
||||
|
||||
|
||||
# End of Makefile.mingw.
|
||||
|
@@ -5,7 +5,9 @@
|
||||
#include <string.h>
|
||||
#include <fluidsynth.h>
|
||||
#include "../config.h"
|
||||
#include "../WIN/plat_dynld.h"
|
||||
#include "../WIN/plat_thread.h"
|
||||
#include "../WIN/plat_ui.h"
|
||||
#include "../device.h"
|
||||
#include "midi_fluidsynth.h"
|
||||
#include "midi.h"
|
||||
@@ -18,6 +20,58 @@ extern void pclog(const char *format, ...);
|
||||
extern void al_set_midi(int freq, int buf_size);
|
||||
extern int soundon;
|
||||
|
||||
static void *fluidsynth_handle; /* handle to WinPcap DLL */
|
||||
|
||||
/* Pointers to the real functions. */
|
||||
static fluid_settings_t*(*f_new_fluid_settings)(void);
|
||||
static void (*f_delete_fluid_settings)(fluid_settings_t *settings);
|
||||
static int (*f_fluid_settings_setnum)(fluid_settings_t *settings, const char *name, double val);
|
||||
static int (*f_fluid_settings_getnum)(fluid_settings_t *settings, const char *name, double *val);
|
||||
static fluid_synth_t * (*f_new_fluid_synth)(fluid_settings_t *settings);
|
||||
static int (*f_delete_fluid_synth)(fluid_synth_t *synth);
|
||||
static int (*f_fluid_synth_noteon)(fluid_synth_t *synth, int chan, int key, int vel);
|
||||
static int (*f_fluid_synth_noteoff)(fluid_synth_t *synth, int chan, int key);
|
||||
static int (*f_fluid_synth_cc)(fluid_synth_t *synth, int chan, int ctrl, int val);
|
||||
static int (*f_fluid_synth_sysex)(fluid_synth_t *synth, const char *data, int len, char *response, int *response_len, int *handled, int dryrun);
|
||||
static int (*f_fluid_synth_pitch_bend)(fluid_synth_t *synth, int chan, int val);
|
||||
static int (*f_fluid_synth_program_change)(fluid_synth_t *synth, int chan, int program);
|
||||
static int (*f_fluid_synth_sfload)(fluid_synth_t *synth, const char *filename, int reset_presets);
|
||||
static int (*f_fluid_synth_sfunload)(fluid_synth_t *synth, unsigned int id, int reset_presets);
|
||||
static int (*f_fluid_synth_set_interp_method)(fluid_synth_t *synth, int chan, int interp_method);
|
||||
static void (*f_fluid_synth_set_reverb)(fluid_synth_t *synth, double roomsize, double damping, double width, double level);
|
||||
static void (*f_fluid_synth_set_reverb_on)(fluid_synth_t *synth, int on);
|
||||
static void (*f_fluid_synth_set_chorus)(fluid_synth_t *synth, int nr, double level, double speed, double depth_ms, int type);
|
||||
static void (*f_fluid_synth_set_chorus_on)(fluid_synth_t *synth, int on);
|
||||
static int (*f_fluid_synth_write_s16)(fluid_synth_t *synth, int len, void *lout, int loff, int lincr, void *rout, int roff, int rincr);
|
||||
static int (*f_fluid_synth_write_float)(fluid_synth_t *synth, int len, void *lout, int loff, int lincr, void *rout, int roff, int rincr);
|
||||
static char* (*f_fluid_version_str)(void);
|
||||
static dllimp_t fluidsynth_imports[] = {
|
||||
{ "new_fluid_settings", &f_new_fluid_settings },
|
||||
{ "delete_fluid_settings", &f_delete_fluid_settings },
|
||||
{ "fluid_settings_setnum", &f_fluid_settings_setnum },
|
||||
{ "fluid_settings_getnum", &f_fluid_settings_getnum },
|
||||
{ "new_fluid_synth", &f_new_fluid_synth },
|
||||
{ "delete_fluid_synth", &f_delete_fluid_synth },
|
||||
{ "fluid_synth_noteon", &f_fluid_synth_noteon },
|
||||
{ "fluid_synth_noteoff", &f_fluid_synth_noteoff },
|
||||
{ "fluid_synth_cc", &f_fluid_synth_cc },
|
||||
{ "fluid_synth_sysex", &f_fluid_synth_sysex },
|
||||
{ "fluid_synth_pitch_bend", &f_fluid_synth_pitch_bend },
|
||||
{ "fluid_synth_program_change", &f_fluid_synth_program_change },
|
||||
{ "fluid_synth_sfload", &f_fluid_synth_sfload },
|
||||
{ "fluid_synth_sfunload", &f_fluid_synth_sfload },
|
||||
{ "fluid_synth_set_interp_method", &f_fluid_synth_set_interp_method },
|
||||
{ "fluid_synth_set_reverb", &f_fluid_synth_set_reverb },
|
||||
{ "fluid_synth_set_reverb_on", &f_fluid_synth_set_reverb_on },
|
||||
{ "fluid_synth_set_chorus", &f_fluid_synth_set_chorus },
|
||||
{ "fluid_synth_set_chorus_on", &f_fluid_synth_set_chorus_on },
|
||||
{ "fluid_synth_write_s16", &f_fluid_synth_write_s16 },
|
||||
{ "fluid_synth_write_float", &f_fluid_synth_write_float },
|
||||
{ "fluid_version_str", &f_fluid_version_str },
|
||||
{ NULL, NULL },
|
||||
};
|
||||
|
||||
|
||||
typedef struct fluidsynth_t
|
||||
{
|
||||
fluid_settings_t* settings;
|
||||
@@ -62,7 +116,7 @@ static void fluidsynth_thread(void *param)
|
||||
{
|
||||
memset(data->buffer, 0, data->buf_size * sizeof(float));
|
||||
if (data->synth)
|
||||
fluid_synth_write_float(data->synth, data->buf_size/2, data->buffer, 0, 2, data->buffer, 1, 2);
|
||||
f_fluid_synth_write_float(data->synth, data->buf_size/2, data->buffer, 0, 2, data->buffer, 1, 2);
|
||||
if (soundon)
|
||||
givealbuffer_midi(data->buffer, data->buf_size);
|
||||
}
|
||||
@@ -70,7 +124,7 @@ static void fluidsynth_thread(void *param)
|
||||
{
|
||||
memset(data->buffer, 0, data->buf_size * sizeof(int16_t));
|
||||
if (data->synth)
|
||||
fluid_synth_write_s16(data->synth, data->buf_size/2, data->buffer_int16, 0, 2, data->buffer_int16, 1, 2);
|
||||
f_fluid_synth_write_s16(data->synth, data->buf_size/2, data->buffer_int16, 0, 2, data->buffer_int16, 1, 2);
|
||||
if (soundon)
|
||||
givealbuffer_midi(data->buffer_int16, data->buf_size);
|
||||
}
|
||||
@@ -90,23 +144,23 @@ void fluidsynth_msg(uint8_t *msg)
|
||||
|
||||
switch (cmd) {
|
||||
case 0x80: /* Note Off */
|
||||
fluid_synth_noteoff(data->synth, chan, param1);
|
||||
f_fluid_synth_noteoff(data->synth, chan, param1);
|
||||
break;
|
||||
case 0x90: /* Note On */
|
||||
fluid_synth_noteon(data->synth, chan, param1, param2);
|
||||
f_fluid_synth_noteon(data->synth, chan, param1, param2);
|
||||
break;
|
||||
case 0xA0: /* Aftertouch */
|
||||
break;
|
||||
case 0xB0: /* Control Change */
|
||||
fluid_synth_cc(data->synth, chan, param1, param2);
|
||||
f_fluid_synth_cc(data->synth, chan, param1, param2);
|
||||
break;
|
||||
case 0xC0: /* Program Change */
|
||||
fluid_synth_program_change(data->synth, chan, param1);
|
||||
f_fluid_synth_program_change(data->synth, chan, param1);
|
||||
break;
|
||||
case 0xD0: /* Channel Pressure */
|
||||
break;
|
||||
case 0xE0: /* Pitch Bend */
|
||||
fluid_synth_pitch_bend(data->synth, chan, (param2 << 7) | param1);
|
||||
f_fluid_synth_pitch_bend(data->synth, chan, (param2 << 7) | param1);
|
||||
break;
|
||||
case 0xF0: /* SysEx */
|
||||
break;
|
||||
@@ -120,7 +174,7 @@ void fluidsynth_sysex(uint8_t* data, unsigned int len)
|
||||
{
|
||||
fluidsynth_t* d = &fsdev;
|
||||
|
||||
fluid_synth_sysex(d->synth, (const char *) data, len, 0, 0, 0, 0);
|
||||
f_fluid_synth_sysex(d->synth, (const char *) data, len, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
void* fluidsynth_init()
|
||||
@@ -128,19 +182,27 @@ void* fluidsynth_init()
|
||||
fluidsynth_t* data = &fsdev;
|
||||
memset(data, 0, sizeof(fluidsynth_t));
|
||||
|
||||
data->settings = new_fluid_settings();
|
||||
/* Try loading the DLL. */
|
||||
fluidsynth_handle = dynld_module("libfluidsynth.dll", fluidsynth_imports);
|
||||
if (fluidsynth_handle == NULL)
|
||||
{
|
||||
plat_msgbox_error(IDS_2171);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
fluid_settings_setnum(data->settings, "synth.sample-rate", 44100);
|
||||
fluid_settings_setnum(data->settings, "synth.gain", device_get_config_int("output_gain")/100.0f);
|
||||
data->settings = f_new_fluid_settings();
|
||||
|
||||
data->synth = new_fluid_synth(data->settings);
|
||||
f_fluid_settings_setnum(data->settings, "synth.sample-rate", 44100);
|
||||
f_fluid_settings_setnum(data->settings, "synth.gain", device_get_config_int("output_gain")/100.0f);
|
||||
|
||||
data->synth = f_new_fluid_synth(data->settings);
|
||||
|
||||
char* sound_font = device_get_config_string("sound_font");
|
||||
data->sound_font = fluid_synth_sfload(data->synth, sound_font, 1);
|
||||
data->sound_font = f_fluid_synth_sfload(data->synth, sound_font, 1);
|
||||
|
||||
if (device_get_config_int("chorus"))
|
||||
{
|
||||
fluid_synth_set_chorus_on(data->synth, 1);
|
||||
f_fluid_synth_set_chorus_on(data->synth, 1);
|
||||
|
||||
int chorus_voices = device_get_config_int("chorus_voices");
|
||||
double chorus_level = device_get_config_int("chorus_level") / 100.0;
|
||||
@@ -153,24 +215,24 @@ void* fluidsynth_init()
|
||||
else
|
||||
chorus_waveform = FLUID_CHORUS_MOD_TRIANGLE;
|
||||
|
||||
fluid_synth_set_chorus(data->synth, chorus_voices, chorus_level, chorus_speed, chorus_depth, chorus_waveform);
|
||||
f_fluid_synth_set_chorus(data->synth, chorus_voices, chorus_level, chorus_speed, chorus_depth, chorus_waveform);
|
||||
}
|
||||
else
|
||||
fluid_synth_set_chorus_on(data->synth, 0);
|
||||
f_fluid_synth_set_chorus_on(data->synth, 0);
|
||||
|
||||
if (device_get_config_int("reverb"))
|
||||
{
|
||||
fluid_synth_set_reverb_on(data->synth, 1);
|
||||
f_fluid_synth_set_reverb_on(data->synth, 1);
|
||||
|
||||
double reverb_room_size = device_get_config_int("reverb_room_size") / 100.0;
|
||||
double reverb_damping = device_get_config_int("reverb_damping") / 100.0;
|
||||
int reverb_width = device_get_config_int("reverb_width");
|
||||
double reverb_level = device_get_config_int("reverb_level") / 100.0;
|
||||
|
||||
fluid_synth_set_reverb(data->synth, reverb_room_size, reverb_damping, reverb_width, reverb_level);
|
||||
f_fluid_synth_set_reverb(data->synth, reverb_room_size, reverb_damping, reverb_width, reverb_level);
|
||||
}
|
||||
else
|
||||
fluid_synth_set_reverb_on(data->synth, 0);
|
||||
f_fluid_synth_set_reverb_on(data->synth, 0);
|
||||
|
||||
int interpolation = device_get_config_int("interpolation");
|
||||
int fs_interpolation = FLUID_INTERP_4THORDER;
|
||||
@@ -184,10 +246,10 @@ void* fluidsynth_init()
|
||||
else if (interpolation == 3)
|
||||
fs_interpolation = FLUID_INTERP_7THORDER;
|
||||
|
||||
fluid_synth_set_interp_method(data->synth, -1, fs_interpolation);
|
||||
f_fluid_synth_set_interp_method(data->synth, -1, fs_interpolation);
|
||||
|
||||
double samplerate;
|
||||
fluid_settings_getnum(data->settings, "synth.sample-rate", &samplerate);
|
||||
f_fluid_settings_getnum(data->settings, "synth.sample-rate", &samplerate);
|
||||
data->samplerate = (int)samplerate;
|
||||
data->buf_size = data->samplerate/RENDER_RATE*2;
|
||||
if (sound_is_float)
|
||||
@@ -205,7 +267,7 @@ void* fluidsynth_init()
|
||||
|
||||
al_set_midi(data->samplerate, data->buf_size);
|
||||
|
||||
pclog("fluidsynth (%s) initialized, samplerate %d, buf_size %d\n", fluid_version_str(), data->samplerate, data->buf_size);
|
||||
pclog("fluidsynth (%s) initialized, samplerate %d, buf_size %d\n", f_fluid_version_str(), data->samplerate, data->buf_size);
|
||||
|
||||
midi_device_t* dev = malloc(sizeof(midi_device_t));
|
||||
memset(dev, 0, sizeof(midi_device_t));
|
||||
@@ -226,9 +288,9 @@ void fluidsynth_close(void* p)
|
||||
fluidsynth_t* data = &fsdev;
|
||||
|
||||
if (data->sound_font != -1)
|
||||
fluid_synth_sfunload(data->synth, data->sound_font, 1);
|
||||
delete_fluid_synth(data->synth);
|
||||
delete_fluid_settings(data->settings);
|
||||
f_fluid_synth_sfunload(data->synth, data->sound_font, 1);
|
||||
f_delete_fluid_synth(data->synth);
|
||||
f_delete_fluid_settings(data->settings);
|
||||
|
||||
midi_close();
|
||||
|
||||
@@ -242,6 +304,13 @@ void fluidsynth_close(void* p)
|
||||
free(data->buffer_int16);
|
||||
}
|
||||
|
||||
/* Unload the DLL if possible. */
|
||||
if (fluidsynth_handle != NULL)
|
||||
{
|
||||
dynld_close(fluidsynth_handle);
|
||||
fluidsynth_handle = NULL;
|
||||
}
|
||||
|
||||
pclog("fluidsynth closed\n");
|
||||
}
|
||||
|
||||
|
@@ -652,8 +652,8 @@ void cirrus_bitblt_start(clgd_t *clgd, svga_t *svga)
|
||||
clgd->blt.height = (svga->gdcreg[0x22] | (svga->gdcreg[0x23] << 8)) + 1;
|
||||
clgd->blt.dst_pitch = (svga->gdcreg[0x24] | (svga->gdcreg[0x25] << 8));
|
||||
clgd->blt.src_pitch = (svga->gdcreg[0x26] | (svga->gdcreg[0x27] << 8));
|
||||
clgd->blt.dst_addr = (svga->gdcreg[0x28] | (svga->gdcreg[0x29] << 8) || (svga->gdcreg[0x2a] << 16));
|
||||
clgd->blt.src_addr = (svga->gdcreg[0x2c] | (svga->gdcreg[0x2d] << 8) || (svga->gdcreg[0x2e] << 16));
|
||||
clgd->blt.dst_addr = (svga->gdcreg[0x28] | (svga->gdcreg[0x29] << 8) | (svga->gdcreg[0x2a] << 16));
|
||||
clgd->blt.src_addr = (svga->gdcreg[0x2c] | (svga->gdcreg[0x2d] << 8) | (svga->gdcreg[0x2e] << 16));
|
||||
clgd->blt.mode = svga->gdcreg[0x30];
|
||||
clgd->blt.modeext = svga->gdcreg[0x33];
|
||||
blt_rop = svga->gdcreg[0x32];
|
||||
|
@@ -10,14 +10,14 @@
|
||||
#include "../device.h"
|
||||
#include "video.h"
|
||||
#include "vid_svga.h"
|
||||
#include "vid_unk_ramdac.h"
|
||||
#include "vid_sc1502x_ramdac.h"
|
||||
#include "vid_et4000.h"
|
||||
|
||||
|
||||
typedef struct et4000_t
|
||||
{
|
||||
svga_t svga;
|
||||
unk_ramdac_t ramdac;
|
||||
sc1502x_ramdac_t ramdac;
|
||||
|
||||
rom_t bios_rom;
|
||||
|
||||
@@ -49,7 +49,7 @@ void et4000_out(uint16_t addr, uint8_t val, void *p)
|
||||
switch (addr)
|
||||
{
|
||||
case 0x3C6: case 0x3C7: case 0x3C8: case 0x3C9:
|
||||
unk_ramdac_out(addr, val, &et4000->ramdac, svga);
|
||||
sc1502x_ramdac_out(addr, val, &et4000->ramdac, svga);
|
||||
return;
|
||||
|
||||
case 0x3CD: /*Banking*/
|
||||
@@ -96,7 +96,7 @@ uint8_t et4000_in(uint16_t addr, void *p)
|
||||
break;
|
||||
|
||||
case 0x3C6: case 0x3C7: case 0x3C8: case 0x3C9:
|
||||
return unk_ramdac_in(addr, &et4000->ramdac, svga);
|
||||
return sc1502x_ramdac_in(addr, &et4000->ramdac, svga);
|
||||
|
||||
case 0x3CD: /*Banking*/
|
||||
return et4000->banking;
|
||||
|
@@ -16,7 +16,6 @@
|
||||
#include "vid_paradise.h"
|
||||
#include "vid_svga.h"
|
||||
#include "vid_svga_render.h"
|
||||
#include "vid_unk_ramdac.h"
|
||||
|
||||
|
||||
typedef struct paradise_t
|
||||
|
@@ -9,10 +9,10 @@
|
||||
#include "../mem.h"
|
||||
#include "video.h"
|
||||
#include "vid_svga.h"
|
||||
#include "vid_unk_ramdac.h"
|
||||
#include "vid_sc1502x_ramdac.h"
|
||||
|
||||
|
||||
void unk_ramdac_out(uint16_t addr, uint8_t val, unk_ramdac_t *ramdac, svga_t *svga)
|
||||
void sc1502x_ramdac_out(uint16_t addr, uint8_t val, sc1502x_ramdac_t *ramdac, svga_t *svga)
|
||||
{
|
||||
int oldbpp = 0;
|
||||
switch (addr)
|
||||
@@ -74,7 +74,7 @@ void unk_ramdac_out(uint16_t addr, uint8_t val, unk_ramdac_t *ramdac, svga_t *sv
|
||||
svga_out(addr, val, svga);
|
||||
}
|
||||
|
||||
uint8_t unk_ramdac_in(uint16_t addr, unk_ramdac_t *ramdac, svga_t *svga)
|
||||
uint8_t sc1502x_ramdac_in(uint16_t addr, sc1502x_ramdac_t *ramdac, svga_t *svga)
|
||||
{
|
||||
switch (addr)
|
||||
{
|
11
src/VIDEO/vid_sc1502x_ramdac.h
Normal file
11
src/VIDEO/vid_sc1502x_ramdac.h
Normal file
@@ -0,0 +1,11 @@
|
||||
/* Copyright holders: Sarah Walker, Tenshi
|
||||
see COPYING for more details
|
||||
*/
|
||||
typedef struct unk_ramdac_t
|
||||
{
|
||||
int state;
|
||||
uint8_t ctrl;
|
||||
} sc1502x_ramdac_t;
|
||||
|
||||
void sc1502x_ramdac_out(uint16_t addr, uint8_t val, sc1502x_ramdac_t *ramdac, svga_t *svga);
|
||||
uint8_t sc1502x_ramdac_in(uint16_t addr, sc1502x_ramdac_t *ramdac, svga_t *svga);
|
@@ -1,11 +0,0 @@
|
||||
/* Copyright holders: Sarah Walker, Tenshi
|
||||
see COPYING for more details
|
||||
*/
|
||||
typedef struct unk_ramdac_t
|
||||
{
|
||||
int state;
|
||||
uint8_t ctrl;
|
||||
} unk_ramdac_t;
|
||||
|
||||
void unk_ramdac_out(uint16_t addr, uint8_t val, unk_ramdac_t *ramdac, svga_t *svga);
|
||||
uint8_t unk_ramdac_in(uint16_t addr, unk_ramdac_t *ramdac, svga_t *svga);
|
@@ -841,6 +841,7 @@ BEGIN
|
||||
IDS_2168 "&Image..."
|
||||
IDS_2169 "Image (&Write-protected)..."
|
||||
IDS_2170 "Check BPB"
|
||||
IDS_2171 "Unable to initialize FluidSynth, make sure you have the following libraries\nin your 86Box folder:\n\nlibfluidsynth.dll\nlibglib-2.0-0.dll\nlibiconv-2.dll\nlibintl-8.dll\nlibpcre-1.dll"
|
||||
|
||||
IDS_3072 "None"
|
||||
IDS_3073 "[Bus] Logitech Bus mouse"
|
||||
|
@@ -2,10 +2,6 @@
|
||||
extern void plat_msgbox_error(int i);
|
||||
extern wchar_t *plat_get_string_from_id(int i);
|
||||
|
||||
#ifndef IDS_2219
|
||||
#define IDS_2219 2219
|
||||
#endif
|
||||
|
||||
#ifndef IDS_2077
|
||||
#define IDS_2077 2077
|
||||
#endif
|
||||
@@ -21,6 +17,14 @@ extern wchar_t *plat_get_string_from_id(int i);
|
||||
#ifndef IDS_2139
|
||||
#define IDS_2139 2139
|
||||
#endif
|
||||
|
||||
#ifndef IDS_2171
|
||||
#define IDS_2171 2171
|
||||
#endif
|
||||
|
||||
#ifndef IDS_2219
|
||||
#define IDS_2219 2219
|
||||
#endif
|
||||
#endif
|
||||
|
||||
extern void plat_msgbox_fatal(char *string);
|
||||
|
@@ -321,6 +321,7 @@
|
||||
#define IDS_2168 2168 // "IDE (PIO-only)"
|
||||
#define IDS_2169 2169 // "%01i:%01i"
|
||||
#define IDS_2170 2170 // "%01i:%01i"
|
||||
#define IDS_2171 2171
|
||||
|
||||
#define IDS_3072 3072
|
||||
#define IDS_3073 3073
|
||||
@@ -393,7 +394,7 @@
|
||||
|
||||
#define IDS_LANG_ENUS IDS_6144
|
||||
|
||||
#define STRINGS_NUM_2048 123
|
||||
#define STRINGS_NUM_2048 124
|
||||
#define STRINGS_NUM_3072 11
|
||||
#define STRINGS_NUM_4096 20
|
||||
#define STRINGS_NUM_4352 7
|
||||
|
@@ -41,6 +41,7 @@ static BOOL CALLBACK deviceconfig_dlgproc(HWND hdlg, UINT message, WPARAM wParam
|
||||
int cid;
|
||||
device_config_t *config;
|
||||
char s[80];
|
||||
wchar_t ws[512];
|
||||
|
||||
switch (message)
|
||||
{
|
||||
@@ -423,14 +424,15 @@ static BOOL CALLBACK deviceconfig_dlgproc(HWND hdlg, UINT message, WPARAM wParam
|
||||
c++;
|
||||
}
|
||||
strcat(file_filter, "|All files (*.*)|*.*|");
|
||||
mbstowcs(ws, file_filter, strlen(file_filter) + 1);
|
||||
d = strlen(file_filter);
|
||||
|
||||
/* replace | with \0 */
|
||||
for (c = 0; c < d; ++c)
|
||||
if (file_filter[c] == '|')
|
||||
file_filter[c] = '\0';
|
||||
if (ws[c] == L'|')
|
||||
ws[c] = 0;
|
||||
|
||||
if (!file_dlg_mb(hdlg, file_filter, s, 0))
|
||||
if (!file_dlg(hdlg, ws, s, 0))
|
||||
SendMessage(h, WM_SETTEXT, 0, (LPARAM)openfilestring);
|
||||
}
|
||||
}
|
||||
@@ -469,8 +471,8 @@ void deviceconfig_open(HWND hwnd, device_t *device)
|
||||
*data++ = 0; /*predefined dialog box class*/
|
||||
data += MultiByteToWideChar(CP_ACP, 0, "Device Configuration", -1, data, 50);
|
||||
|
||||
*data++ = 8; /*Point*/
|
||||
data += MultiByteToWideChar(CP_ACP, 0, "MS Sans Serif", -1, data, 50);
|
||||
*data++ = 9; /*Point*/
|
||||
data += MultiByteToWideChar(CP_ACP, 0, "Segoe UI", -1, data, 50);
|
||||
|
||||
if (((unsigned long)data) & 2)
|
||||
data++;
|
||||
|
@@ -33,7 +33,6 @@
|
||||
#include "../hdd.h"
|
||||
#include "../ide.h"
|
||||
#include "../scsi.h"
|
||||
#include "../scsi_buslogic.h"
|
||||
#include "../network/network.h"
|
||||
#include "../sound/midi.h"
|
||||
#include "../sound/sound.h"
|
||||
|
Reference in New Issue
Block a user