Skip to content

Commit

Permalink
add CHANGELOG.txt
Browse files Browse the repository at this point in the history
  • Loading branch information
crazii committed Apr 29, 2024
1 parent de05cad commit 4677c58
Show file tree
Hide file tree
Showing 2 changed files with 72 additions and 7 deletions.
62 changes: 62 additions & 0 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
1.0 beta4 (04/29/2024)
Build: add CI/CD pipeline, build FreedDOS image and zip file, by volkertb (Volkert de Buisonjé).
Build: Add Makefile (RHIDE project files deprecated), by thp (Thomas Perl).
Drivers: AC97: Add support for SIS7012, by thp (Thomas Perl).
Drivers: Add support for ICH5/AD1980 sound output, by thp (Thomas Perl).
CD-Audio mixer support, by thp (Thomas Perl).
Runtime debugging over serial port, by thp (Thomas Perl).
Text-mode UI: Nice display of sound card name, and highlight important messsge with color, by thp (Thomas Perl).
Add PIO support to Intel HDA, by jiyunomegami.
Drivers: Ensoniq ES1371 supported.
MPU-401 UART emulation with serial MIDI output, by jiyunomegami.
Drivers: C-Media CMI 8338/8738 supported, by crazii & jiyunomegami.
Expermimental: IRQ assignment if intial PCI sound card IRQ is invalid or above 15.
Drivers: YAMAHA YMF supported, by jiyunomegami.
PCM resampling improvements and fix low-frequency interpolation (Skyroads SFX).
HDPMI: PCI IRQ client bypass, send to SBEMU/BIOS directly and hide from games - fix freeze for DOOM. Thanks to veelstekel for testing.
Build: enable -O2 and -flto optimizations.
Command line: /I9 supported for IRQ9 if IRQ5/7 not working due to IRQ conflicts, by jiyunomegami.
Command line: options support decimals, i.e. /K22050 and other arbitrary values, by jiyunomegami.
Add /SCFM and /SCMPU for cards that have builtin FM and MPU (not enabled by default, need specify in command line), by jiyunomegami.
Drivers: /SCFM /SCMPU for CMI cards, by jiyunomegami.
Drivers: MMIO fix for ICH4 boards, by jiyunomegami.
Drivers: new set of Linux sound card drivers ported, by jiyunomegami. New dirvers:
ALS4000
EMU10K1X (Dell SB0200)
X-Fi (both EMU20K1 and EMU20K2)
OXYGEN(CMI8788) (Only tested with Asus Xonar DG)
ESS Allegro-1 (ES1988S/ES1989S)
Trident 4D Wave
IRQ guard to prevent the virtual SB IRQ sending to BIOS.
Bugfix: crash on calling HDPMI functions, and crash on error exiting.
Bugfix: DMA address mapping using DPMI_MapMemory/DPMI_UnmapMemory that doesn't work properly and cause leaks.
Bugfix: SB16: IRQ/DMA mixer register not inited properly, seen in TOMBRAIDER's SETUP.
Add high DMA check, force /Hx=/Dx when /Hx uses low DMA for 16 bit PCM.
Bugfix: prevent compiler optimization on MMIO reads/writes.
Bugfix: fix for some Intel HDA chips that mutes the sound for unkown reason.
Add README.txt & CHANGLOG.txt, shipped with binaries in zip file.
Some trivial bugfixes and improvements.

1.0 Beta3
Merge commit from HDPMI: add -x[n] option to limit memory further, -x1 limit mem to 128MB, -x2 limit mem to 64MB. this may help some games that do work with large memory. - by @Baron von Riedesel.
Remove debug message for HDPMI.
Fix Epic Pinball sound spedup.
Add delay to DSP command 0Fh (IRQ request) to make Dynablaster work, and potentially other games.
Add DSP commands: 0E4h/0E8h (test read/write), 0E2h (DMA id), 045h (continue auto DMA).
Fix /Tn bug, /t2 as SBPro, instead of SB2.0. by @jtchip
Bugfix on VIA VT8233/8235/8237


1.0 Beta2c:
Add "/R" option to reset sound card driver, in case the soundcard is touched by other utilities.
Add SB direct mode handling (non-DMA, DSP command 10h) previously requested by @Bondi. tested game: Shanghai 2 - experimental, may have noises.
Bugfix on BLASTER env set. (seen on FreeDOS or MSDOS prior to 7.0)
Set power states for Intel HDA, fix compatibility issues for some PCs.
Bugfix on volume settings, disable mixer resetting on DSP resetting, make volume consistent among games and can be set properly by SB utilities.
Hack: double the "volume" of OPL so that it sounds near to the digital volume.
Other bugfixes that may fix functionality or improve stability.

1.0 Beta2b:
Fix SB Live/Audigy interrupt.
Add option "/SCL" to list sound cards, use "/SC[n]" to select sound card.
Experimental: adjust sound buffer to reduce latency. (1/8 to original).
17 changes: 10 additions & 7 deletions README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -59,15 +59,17 @@ AUTOEXEX.BAT:
The command line options format is `/OPTION[VALUE]`, there's NO space, or ':' or '='.
If 'VALUE' is not present, then VALUE equals 1, to make it easy on simple switches.

NOTE: after SBEMU installs, you can change them by a another run of SBEMU with new changed options.

/?: Show a brief description on the command line options.

/A: Specify the SB base IO address, usually 220 will work, i.e. /A220, default: 220

/I: SB interrupt request number, valid values: /I5 or /I7. if one is not working properly due to hardware conflicts,
/I: SB interrupt request number, valid values: /I5, /I7 /I9. if one is not working properly due to hardware conflicts,
you may try to use another one. Default: 7

/D: DMA channel of SB used, valid value: 0,1,3. usually /D1 works fine.
To get maximum compatibility, /D0 is not recommended becuase
To get maximum compatibility, /D2 is not recommended becuase
DMA channel 2 is for legacy floppy disk controller, and should be avoided.

/H: 16 bit "high" DMA channel for SB16/AWE, usually 5, 6, or 7. default: /H5.
Expand All @@ -76,7 +78,7 @@ If 'VALUE' is not present, then VALUE equals 1, to make it easy on simple switch
one controller (channel 0-3) uses 8 bit transfer and another (channel 4-7) is 16 bit.
The 16 bit channels are so called "high" DMA channels.

/H4 (/D4) is not vaid because DMA channel 4 is used for cascading the other DMA controller.
/H4 (or /D4) is not vaid because DMA channel 4 is used for cascading the other DMA controller.

Some game will use, or be configured to use 16 bit DMA
transfer, on such case, this value is used.
Expand Down Expand Up @@ -108,7 +110,7 @@ If 'VALUE' is not present, then VALUE equals 1, to make it easy on simple switch
But you may try to set it higher if your want, or for music players.

/FIXTC: Use fixed time constant. Default: /FIXTC0 (disabled)
Old SB hardwares cannot set sample reate directly, but using a byte of 'time-constant' to calculate smaple rate indirectly,
Old SB hardwares don't set sample reate directly, but using a byte of 'time-constant' to calculate smaple rate indirectly,
when 'time-constant' is used, there's some inevitable PRECISION LOSS: if a game set sample rate to 22050 through time-constant,
the real sample rate caclulated back from the time constant is not exactly 22050, and SBEMU will try to fix it using
the most near and commonly used sample rates (11025/22050 etc.)
Expand Down Expand Up @@ -157,11 +159,12 @@ Some protected mode games refuse to work if there're too much DPMI memory, so th
used to limit the DPMI memory. it is always recommeded to get max compatiblity for gaming.
'HDPMI32i -r -x'
NOTE: -r will make HDPMI resident (TSR).
-x will limit the DPMI memory to 256M, -x1 will make it 128M, and so on.

Some real mode games won't work either if XMS is too much, so it is recommended to set XMS for JEMMEX to 8192K in CONFIG.SYS.
Some real games won't work properly if the XMS is more than 8192.
Some real games won't work properly (i.e. no SFX) if the XMS is more than 8192.
`DEVICE=JEMMEX.EXE X2MAX=8192`
NOTE: this option is not tested for all rm games, you can find out if it works for you.
NOTE: this option is not tested for all rm games, you can find out a value that works for you.


c) Other
Expand All @@ -180,7 +183,7 @@ i.e. WOLF3D won't work properly on Thinkapd T540p with EMS enabled, use
FAQ:


Q1: DO I needs to set BLASTER environment variable before running SBEMU?
Q1: Do I need to set BLASTER environment variable before running SBEMU?

Usually it is not needed. After SBEMU installs, it will set the BLASTER for you.
But if you set it before running SBEMU, SBEMU will read it and use as options,
Expand Down

0 comments on commit 4677c58

Please sign in to comment.