add option for ETen Chinese system

This commit is contained in:
Wengier
2021-10-25 23:02:57 -04:00
parent e27ad7307c
commit 95d4b40aed
8 changed files with 43 additions and 16 deletions

View File

@@ -2,6 +2,10 @@
- Fix horizontal lines in the debugger window being - Fix horizontal lines in the debugger window being
rendered as unrelated characters in some code rendered as unrelated characters in some code
pages. (Allofich) pages. (Allofich)
- Added config option "vga fill active memory" which
when set will fill inactive video memory regions
with RAM rather than mapping them as empty. This
allows ETen Chinese system 2000 to run. (Wengier)
- Added config option "dosvfunc" in [ttf] section to - Added config option "dosvfunc" in [ttf] section to
support DOS/V applications when country information support DOS/V applications when country information
is set to Japan in TTF output. (nanshiki) is set to Japan in TTF output. (nanshiki)

View File

@@ -774,6 +774,7 @@ fepcontrol = both
#DOSBOX-X-ADV:# bit 6 of the DAC command selects between 5:5:5 and 5:6:5. Set this option for demos or #DOSBOX-X-ADV:# bit 6 of the DAC command selects between 5:5:5 and 5:6:5. Set this option for demos or
#DOSBOX-X-ADV:# games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is #DOSBOX-X-ADV:# games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is
#DOSBOX-X-ADV:# not rendering highcolor 16bpp correctly. #DOSBOX-X-ADV:# not rendering highcolor 16bpp correctly.
#DOSBOX-X-ADV:# vga fill active memory: If set, DOSBox-X will fill inactive video memory regions with RAM rather than mapping them as empty. This allows ETen Chinese system 2000 to run.
#DOSBOX-X-ADV:# page flip debug line: VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written. #DOSBOX-X-ADV:# page flip debug line: VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written.
#DOSBOX-X-ADV:# This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering. #DOSBOX-X-ADV:# This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering.
#DOSBOX-X-ADV:# vertical retrace poll debug line: VGA debugging switch. If set, an inverse green dotted line will be drawn on the exact scanline that the CRTC status port (0x3DA) was read. #DOSBOX-X-ADV:# vertical retrace poll debug line: VGA debugging switch. If set, an inverse green dotted line will be drawn on the exact scanline that the CRTC status port (0x3DA) was read.
@@ -896,7 +897,7 @@ fepcontrol = both
#DOSBOX-X-ADV:# This option forces VGA emulation to ignore odd/even mode except in text and CGA modes. #DOSBOX-X-ADV:# This option forces VGA emulation to ignore odd/even mode except in text and CGA modes.
#DOSBOX-X-ADV-SEE:# #DOSBOX-X-ADV-SEE:#
#DOSBOX-X-ADV-SEE:# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details): #DOSBOX-X-ADV-SEE:# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
#DOSBOX-X-ADV-SEE:# -> vmemdelay; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes #DOSBOX-X-ADV-SEE:# -> vmemdelay; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; vga fill active memory; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes
#DOSBOX-X-ADV-SEE:# #DOSBOX-X-ADV-SEE:#
#DOSBOX-X-ADV:vmemdelay = 0 #DOSBOX-X-ADV:vmemdelay = 0
vmemsize = -1 vmemsize = -1
@@ -918,6 +919,7 @@ high intensity blinking = true
#DOSBOX-X-ADV:forcerate = #DOSBOX-X-ADV:forcerate =
#DOSBOX-X-ADV:sierra ramdac = true #DOSBOX-X-ADV:sierra ramdac = true
#DOSBOX-X-ADV:sierra ramdac lock 565 = false #DOSBOX-X-ADV:sierra ramdac lock 565 = false
#DOSBOX-X-ADV:vga fill active memory = false
#DOSBOX-X-ADV:page flip debug line = false #DOSBOX-X-ADV:page flip debug line = false
#DOSBOX-X-ADV:vertical retrace poll debug line = false #DOSBOX-X-ADV:vertical retrace poll debug line = false
#DOSBOX-X-ADV:cgasnow = true #DOSBOX-X-ADV:cgasnow = true
@@ -1145,7 +1147,7 @@ auxdevice = intellimouse
# strikeout: If set, DOSBox-X will display strikeout text visually (requires a word processor be set) for the TTF output. # strikeout: If set, DOSBox-X will display strikeout text visually (requires a word processor be set) for the TTF output.
#DOSBOX-X-ADV:# char512: If set, DOSBox-X will display the 512-character font if possible (requires a word processor be set) for the TTF output. #DOSBOX-X-ADV:# char512: If set, DOSBox-X will display the 512-character font if possible (requires a word processor be set) for the TTF output.
# printfont: If set, DOSBox-X will force to use the current TrueType font (set via font option) for printing in addition to displaying. # printfont: If set, DOSBox-X will force to use the current TrueType font (set via font option) for printing in addition to displaying.
# autodbcs: If set, DOSBox-X enables Chinese/Japnese/Korean DBCS (double-byte) characters when these code pages are active by default. # autodbcs: If set, DOSBox-X enables Chinese/Japanese/Korean DBCS (double-byte) characters when these code pages are active by default.
# Only applicable when using a DBCS code page (932: Japanese, 936: Simplified Chinese; 949: Korean; 950: Traditional Chinese) # Only applicable when using a DBCS code page (932: Japanese, 936: Simplified Chinese; 949: Korean; 950: Traditional Chinese)
# This applies to both the display and printing of these characters (see the [printer] section for details of the latter). # This applies to both the display and printing of these characters (see the [printer] section for details of the latter).
#DOSBOX-X-ADV:# autoboxdraw: If set, DOSBox-X will auto-detect ASCII box-drawing characters for CJK (Chinese/Japanese/Korean) support in the TTF output. #DOSBOX-X-ADV:# autoboxdraw: If set, DOSBox-X will auto-detect ASCII box-drawing characters for CJK (Chinese/Japanese/Korean) support in the TTF output.
@@ -1153,7 +1155,7 @@ auxdevice = intellimouse
#DOSBOX-X-ADV:# This applies to both the display and printing of these characters (see the [printer] section for details of the latter). #DOSBOX-X-ADV:# This applies to both the display and printing of these characters (see the [printer] section for details of the latter).
#DOSBOX-X-ADV:# halfwidthkana: If set, DOSBox-X enables half-width Katakana to replace upper ASCII characters for the Japanese code page (932) of a non-PC98 machine type in the TTF output. #DOSBOX-X-ADV:# halfwidthkana: If set, DOSBox-X enables half-width Katakana to replace upper ASCII characters for the Japanese code page (932) of a non-PC98 machine type in the TTF output.
# blinkc: If set to true, the cursor blinks for the TTF output; setting it to false will turn the blinking off. # blinkc: If set to true, the cursor blinks for the TTF output; setting it to false will turn the blinking off.
# You can also change the blinking rate by setting an interger between 1 (fastest) and 7 (slowest), or 0 for no cursor. # You can also change the blinking rate by setting an integer between 1 (fastest) and 7 (slowest), or 0 for no cursor.
# dosvfunc: If set, enables FEP control to function for Japanese DOS/V applications, and changes the blinking of character attributes to high brightness. # dosvfunc: If set, enables FEP control to function for Japanese DOS/V applications, and changes the blinking of character attributes to high brightness.
#DOSBOX-X-ADV-SEE:# #DOSBOX-X-ADV-SEE:#
#DOSBOX-X-ADV-SEE:# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details): #DOSBOX-X-ADV-SEE:# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):

View File

@@ -355,7 +355,7 @@ fepcontrol = both
# This option has no effect in PC-98 and some other video modes. # This option has no effect in PC-98 and some other video modes.
# #
# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details): # Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
# -> vmemdelay; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes # -> vmemdelay; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; vga fill active memory; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes
# #
vmemsize = -1 vmemsize = -1
vmemsizekb = 0 vmemsizekb = 0
@@ -464,11 +464,11 @@ auxdevice = intellimouse
# underline: If set, DOSBox-X will display underlined text visually (requires a word processor be set) for the TTF output. # underline: If set, DOSBox-X will display underlined text visually (requires a word processor be set) for the TTF output.
# strikeout: If set, DOSBox-X will display strikeout text visually (requires a word processor be set) for the TTF output. # strikeout: If set, DOSBox-X will display strikeout text visually (requires a word processor be set) for the TTF output.
# printfont: If set, DOSBox-X will force to use the current TrueType font (set via font option) for printing in addition to displaying. # printfont: If set, DOSBox-X will force to use the current TrueType font (set via font option) for printing in addition to displaying.
# autodbcs: If set, DOSBox-X enables Chinese/Japnese/Korean DBCS (double-byte) characters when these code pages are active by default. # autodbcs: If set, DOSBox-X enables Chinese/Japanese/Korean DBCS (double-byte) characters when these code pages are active by default.
# Only applicable when using a DBCS code page (932: Japanese, 936: Simplified Chinese; 949: Korean; 950: Traditional Chinese) # Only applicable when using a DBCS code page (932: Japanese, 936: Simplified Chinese; 949: Korean; 950: Traditional Chinese)
# This applies to both the display and printing of these characters (see the [printer] section for details of the latter). # This applies to both the display and printing of these characters (see the [printer] section for details of the latter).
# blinkc: If set to true, the cursor blinks for the TTF output; setting it to false will turn the blinking off. # blinkc: If set to true, the cursor blinks for the TTF output; setting it to false will turn the blinking off.
# You can also change the blinking rate by setting an interger between 1 (fastest) and 7 (slowest), or 0 for no cursor. # You can also change the blinking rate by setting an integer between 1 (fastest) and 7 (slowest), or 0 for no cursor.
# dosvfunc: If set, enables FEP control to function for Japanese DOS/V applications, and changes the blinking of character attributes to high brightness. # dosvfunc: If set, enables FEP control to function for Japanese DOS/V applications, and changes the blinking of character attributes to high brightness.
# #
# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details): # Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):

View File

@@ -750,6 +750,7 @@ use20pixelfont = false
# bit 6 of the DAC command selects between 5:5:5 and 5:6:5. Set this option for demos or # bit 6 of the DAC command selects between 5:5:5 and 5:6:5. Set this option for demos or
# games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is # games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is
# not rendering highcolor 16bpp correctly. # not rendering highcolor 16bpp correctly.
# vga fill active memory: If set, DOSBox-X will fill inactive video memory regions with RAM rather than mapping them as empty. This allows ETen Chinese system 2000 to run.
# page flip debug line: VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written. # page flip debug line: VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written.
# This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering. # This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering.
# vertical retrace poll debug line: VGA debugging switch. If set, an inverse green dotted line will be drawn on the exact scanline that the CRTC status port (0x3DA) was read. # vertical retrace poll debug line: VGA debugging switch. If set, an inverse green dotted line will be drawn on the exact scanline that the CRTC status port (0x3DA) was read.
@@ -890,6 +891,7 @@ video bios enable cga second half rom font = true
forcerate = forcerate =
sierra ramdac = true sierra ramdac = true
sierra ramdac lock 565 = false sierra ramdac lock 565 = false
vga fill active memory = false
page flip debug line = false page flip debug line = false
vertical retrace poll debug line = false vertical retrace poll debug line = false
cgasnow = true cgasnow = true
@@ -1113,7 +1115,7 @@ auxdevice = intellimouse
# strikeout: If set, DOSBox-X will display strikeout text visually (requires a word processor be set) for the TTF output. # strikeout: If set, DOSBox-X will display strikeout text visually (requires a word processor be set) for the TTF output.
# char512: If set, DOSBox-X will display the 512-character font if possible (requires a word processor be set) for the TTF output. # char512: If set, DOSBox-X will display the 512-character font if possible (requires a word processor be set) for the TTF output.
# printfont: If set, DOSBox-X will force to use the current TrueType font (set via font option) for printing in addition to displaying. # printfont: If set, DOSBox-X will force to use the current TrueType font (set via font option) for printing in addition to displaying.
# autodbcs: If set, DOSBox-X enables Chinese/Japnese/Korean DBCS (double-byte) characters when these code pages are active by default. # autodbcs: If set, DOSBox-X enables Chinese/Japanese/Korean DBCS (double-byte) characters when these code pages are active by default.
# Only applicable when using a DBCS code page (932: Japanese, 936: Simplified Chinese; 949: Korean; 950: Traditional Chinese) # Only applicable when using a DBCS code page (932: Japanese, 936: Simplified Chinese; 949: Korean; 950: Traditional Chinese)
# This applies to both the display and printing of these characters (see the [printer] section for details of the latter). # This applies to both the display and printing of these characters (see the [printer] section for details of the latter).
# autoboxdraw: If set, DOSBox-X will auto-detect ASCII box-drawing characters for CJK (Chinese/Japanese/Korean) support in the TTF output. # autoboxdraw: If set, DOSBox-X will auto-detect ASCII box-drawing characters for CJK (Chinese/Japanese/Korean) support in the TTF output.
@@ -1121,7 +1123,7 @@ auxdevice = intellimouse
# This applies to both the display and printing of these characters (see the [printer] section for details of the latter). # This applies to both the display and printing of these characters (see the [printer] section for details of the latter).
# halfwidthkana: If set, DOSBox-X enables half-width Katakana to replace upper ASCII characters for the Japanese code page (932) of a non-PC98 machine type in the TTF output. # halfwidthkana: If set, DOSBox-X enables half-width Katakana to replace upper ASCII characters for the Japanese code page (932) of a non-PC98 machine type in the TTF output.
# blinkc: If set to true, the cursor blinks for the TTF output; setting it to false will turn the blinking off. # blinkc: If set to true, the cursor blinks for the TTF output; setting it to false will turn the blinking off.
# You can also change the blinking rate by setting an interger between 1 (fastest) and 7 (slowest), or 0 for no cursor. # You can also change the blinking rate by setting an integer between 1 (fastest) and 7 (slowest), or 0 for no cursor.
# dosvfunc: If set, enables FEP control to function for Japanese DOS/V applications, and changes the blinking of character attributes to high brightness. # dosvfunc: If set, enables FEP control to function for Japanese DOS/V applications, and changes the blinking of character attributes to high brightness.
font = font =
fontbold = fontbold =

View File

@@ -2229,6 +2229,9 @@ void DOSBOX_SetupConfigSections(void) {
"games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is\n" "games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is\n"
"not rendering highcolor 16bpp correctly."); "not rendering highcolor 16bpp correctly.");
Pbool = secprop->Add_bool("vga fill active memory",Property::Changeable::WhenIdle,false);
Pbool->Set_help("If set, DOSBox-X will fill inactive video memory regions with RAM rather than mapping them as empty. This allows ETen Chinese system 2000 to run.");
Pbool = secprop->Add_bool("page flip debug line",Property::Changeable::Always,false); Pbool = secprop->Add_bool("page flip debug line",Property::Changeable::Always,false);
Pbool->Set_help("VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written.\n" Pbool->Set_help("VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written.\n"
"This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering."); "This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering.");

View File

@@ -241,6 +241,7 @@ bool vga_enable_hpel_effects = false;
bool vga_enable_3C6_ramdac = false; bool vga_enable_3C6_ramdac = false;
bool egavga_per_scanline_hpel = true; bool egavga_per_scanline_hpel = true;
bool vga_sierra_lock_565 = false; bool vga_sierra_lock_565 = false;
bool vga_fill_inactive_ram = false;
bool enable_vga_resize_delay = false; bool enable_vga_resize_delay = false;
bool vga_ignore_hdispend_change_if_smaller = false; bool vga_ignore_hdispend_change_if_smaller = false;
bool ignore_vblank_wraparound = false; bool ignore_vblank_wraparound = false;
@@ -838,6 +839,7 @@ void VGA_Reset(Section*) {
vga_enable_3C6_ramdac = section->Get_bool("sierra ramdac"); vga_enable_3C6_ramdac = section->Get_bool("sierra ramdac");
vga_enable_hpel_effects = section->Get_bool("allow hpel effects"); vga_enable_hpel_effects = section->Get_bool("allow hpel effects");
vga_sierra_lock_565 = section->Get_bool("sierra ramdac lock 565"); vga_sierra_lock_565 = section->Get_bool("sierra ramdac lock 565");
vga_fill_inactive_ram = section->Get_bool("vga fill active memory");
hretrace_fx_avg_weight = section->Get_double("hretrace effect weight"); hretrace_fx_avg_weight = section->Get_double("hretrace effect weight");
egavga_per_scanline_hpel = section->Get_bool("ega per scanline hpel"); egavga_per_scanline_hpel = section->Get_bool("ega per scanline hpel");
ignore_vblank_wraparound = section->Get_bool("ignore vblank wraparound"); ignore_vblank_wraparound = section->Get_bool("ignore vblank wraparound");

View File

@@ -41,6 +41,7 @@ uint32_t pc98_pegc_banks[2] = {0x0000,0x0000}; /* bank switching offsets */
extern bool non_cga_ignore_oddeven; extern bool non_cga_ignore_oddeven;
extern bool non_cga_ignore_oddeven_engage; extern bool non_cga_ignore_oddeven_engage;
extern bool vga_fill_inactive_ram;
extern bool vga_ignore_extended_memory_bit; extern bool vga_ignore_extended_memory_bit;
extern bool enable_pc98_256color_planar; extern bool enable_pc98_256color_planar;
extern bool enable_pc98_256color; extern bool enable_pc98_256color;
@@ -2370,21 +2371,34 @@ void VGA_SetupHandlers(void) {
vgapages.base = VGA_PAGE_A0; vgapages.base = VGA_PAGE_A0;
vgapages.mask = 0xffff & vga.mem.memmask; vgapages.mask = 0xffff & vga.mem.memmask;
MEM_SetPageHandler( VGA_PAGE_A0, 16, newHandler ); MEM_SetPageHandler( VGA_PAGE_A0, 16, newHandler );
MEM_SetPageHandler( VGA_PAGE_B0, 16, &vgaph.empty ); if (vga_fill_inactive_ram)
MEM_ResetPageHandler_RAM( VGA_PAGE_B0, 16);
else
MEM_SetPageHandler( VGA_PAGE_B0, 16, &vgaph.empty );
break; break;
case 2: case 2:
vgapages.base = VGA_PAGE_B0; vgapages.base = VGA_PAGE_B0;
vgapages.mask = 0x7fff & vga.mem.memmask; vgapages.mask = 0x7fff & vga.mem.memmask;
MEM_SetPageHandler( VGA_PAGE_B0, 8, newHandler ); MEM_SetPageHandler( VGA_PAGE_B0, 8, newHandler );
MEM_SetPageHandler( VGA_PAGE_A0, 16, &vgaph.empty ); if (vga_fill_inactive_ram) {
MEM_SetPageHandler( VGA_PAGE_B8, 8, &vgaph.empty ); MEM_ResetPageHandler_RAM( VGA_PAGE_A0, 16 );
MEM_ResetPageHandler_RAM( VGA_PAGE_B8, 8 );
} else {
MEM_SetPageHandler( VGA_PAGE_A0, 16, &vgaph.empty );
MEM_SetPageHandler( VGA_PAGE_B8, 8, &vgaph.empty );
}
break; break;
case 3: case 3:
vgapages.base = VGA_PAGE_B8; vgapages.base = VGA_PAGE_B8;
vgapages.mask = 0x7fff & vga.mem.memmask; vgapages.mask = 0x7fff & vga.mem.memmask;
MEM_SetPageHandler( VGA_PAGE_B8, 8, newHandler ); MEM_SetPageHandler( VGA_PAGE_B8, 8, newHandler );
MEM_SetPageHandler( VGA_PAGE_A0, 16, &vgaph.empty ); if (vga_fill_inactive_ram) {
MEM_SetPageHandler( VGA_PAGE_B0, 8, &vgaph.empty ); MEM_ResetPageHandler_RAM( VGA_PAGE_A0, 16 );
MEM_ResetPageHandler_RAM( VGA_PAGE_B0, 8 );
} else {
MEM_SetPageHandler( VGA_PAGE_A0, 16, &vgaph.empty );
MEM_SetPageHandler( VGA_PAGE_B0, 8, &vgaph.empty );
}
break; break;
} }
if(svgaCard == SVGA_S3Trio && (vga.s3.ext_mem_ctrl & 0x10)) if(svgaCard == SVGA_S3Trio && (vga.s3.ext_mem_ctrl & 0x10))

View File

@@ -1,8 +1,8 @@
#define PACKAGE "dosbox-x" #define PACKAGE "dosbox-x"
#define PACKAGE_BUGREPORT "https://github.com/joncampbell123/dosbox-x/issues" #define PACKAGE_BUGREPORT "https://github.com/joncampbell123/dosbox-x/issues"
#define PACKAGE_NAME "dosbox-x" #define PACKAGE_NAME "dosbox-x"
#define PACKAGE_STRING "dosbox-x 0.83.18" #define PACKAGE_STRING "dosbox-x 0.83.19"
#define PACKAGE_TARNAME "dosbox-x" #define PACKAGE_TARNAME "dosbox-x"
#define PACKAGE_URL "https://dosbox-x.com" #define PACKAGE_URL "https://dosbox-x.com"
#define PACKAGE_VERSION "0.83.18" #define PACKAGE_VERSION "0.83.19"
#define VERSION "0.83.18" #define VERSION "0.83.19"