Skip to content

Releases: joncampbell123/doslib

Misc fixes and PC-98

09 Dec 16:44
Compare
Choose a tag to compare
  • iconv related fixes
  • PC-98 utilities:
    • CG font browser
    • Attribute testing
    • CG ROM/RAM access test
    • CG FONT ROM dumping utility
    • SJIS test programs
    • Fixes for timer
    • Tools to dump STDIN and INT 18h keyboard state for debugging

DOSAMP: Now with runtime file selection

05 Nov 23:42
Compare
Choose a tag to compare
  • Windows builds (but not Windows NT console builds) can now accept new files to play via drag & drop from your Windows shell.
  • Running DOSAMP without a file to play now prompts for the file. If you do not select a file, then the player just does nothing, but you can always select another file.
  • A terminal-based file selection UI is now available. You can type in the path of the WAV file to play with backspace, CTRL+W word erasure, and Bash-inspired tab completion on Linux, MS-DOS, and Windows systems where the "open file dialog" common control is not available.

DOSAMP with new audio output and timing for Windows 3.x/9x/ME/NT/XP/etc.

04 Nov 22:25
Compare
Choose a tag to compare
  • DOSAMP updated with Windows 16-bit and 32-bit targets
  • Windows builds will use QueryPerformanceCounter (32-bit), timeGetTime (16/32-bit), or if neither are available, the 8254 timer
  • Windows WINMM/MMSYSTEM (waveOut*) output driver for audio playback (Windows 3.0 or higher)
  • Windows DirectSound output driver for audio playback (Windows 95/NT or higher)
  • Bugfix: Don't use or attempt 8254 timer if running on Windows NT. This fix allows DOSAMP to run on Windows XP up through 7.
  • Windows NT/95 targeted builds no longer include 8254 code.
  • Remove GDI delay for WINFCON console.
  • New compiler flags to help consolidate all code into one segment, data into another, to reduce the total number of segments in 16-bit Windows builds. This is important for real-mode Windows targets where the loader tends to reject Win16 EXEs with (about) more than 6 segments.

DOSAMP fixed, Sound Blaster test suite development

30 Oct 09:15
Compare
Choose a tag to compare
  • I think I finally fixed the IRQ issues in DOSAMP. Storing the "is masked" result in a bitfield has issues. DOSAMP should hook the IRQ and either chain or EOI correctly now on actual hardware
  • Sound Blaster sample rate tests complete. This includes SB 1.x, 2.x, SB16 8 and 16-bit mono/stereo tests, ESS688 rate tests, and SB ADPCM playback tests. DMA timing tests complete as well, to show transfer rate and hopefully reveal how much of a FIFO is there. Info test program as well.

Sound Blaster speed competition release

23 Oct 06:14
Compare
Choose a tag to compare
  • New utility to run Sound Blaster cards through tests to determine sample rate/time constant vs how fast it really plays
  • Additional tool for those willing to spend 1-2 hours testing all 65536 sample rates on the SB16
  • Test results, so far, are in the source code
  • Graphs (gnuplot) of the results
  • DOSAMP is finished, though on real hardware it yet has issues with hanging or failing to hook or ack the IRQ.

DOSAMP... fixed this time. really.

11 Oct 18:59
Compare
Choose a tag to compare
  • Misunderstanding of Open Watcom (because I'm used to GCC) fixed to speed up resampler. Open Watcom doesn't seem to understand it can optimize static const integers by putting them as immediate values in the immediate form of x86 opcodes like GCC can.
  • Fix integer overflow that can happen in 16-bit builds when the WAV file you're playing is 32768Hz or faster.

DOSAMP... fixed this time

10 Oct 20:46
Compare
Choose a tag to compare

DOSAMP bug fixes since last release:

  • A stupid mistake in the hw/sndsb code prevented it (and any program using it) from actually working on anything other than Sound Blaster 16
  • Format conversion and resampling, if source WAV file cannot otherwise play as-is on the sound card.
  • More options.

DOSAMP... soon we will whip the retro llama's ass

  • VIM modelines
  • Code cleanup, retab, cleanup
  • Sound Blaster cleanup
  • Sound Blaster DSP timeout now enforced by I/O counting rather than wrapping I/O with 8254 timer tracking to reduce code size and simplify. I/O counting is valid because the ISA bus goes only up to 8.333MHz and the hardware involved died out with the ISA bus at that time. Going through a PCI-ISA bridge doesn't make it go any faster. PCI emulation is likely not to require as much waiting.
  • Fixup and cleanup of Adlib MIDI playback code. Instruments are now involved, so now the music is more than just a generic FM synth setting.
  • PLAYMP3.EXE bugfix to resolve strange crash under Windows 3.1 Win32s when closing the program while playing an MP3. It seems to be related to waveOut callback??
  • New "DOSAMP" media player forming. Though copy-pasta of the Sound Blaster test program, it is being developed into a more general modular interface that will eventually support different file formats, interfaces, time sources, and sound cards (besides Sound Blaster). If it's not clear, "DOSAMP" is a loose take on the once-popular WinAMP program, that is open source and runs under MS-DOS. Eventually DOSAMP will run on MS-DOS & Windows 3.1 (16-bit and 32-bit), Windows 95/98/ME, Linux, Mac OS X, etc.

Enjoy.

Bug fixes, documentation, and NEC PC-98 development

10 Sep 05:02
Compare
Choose a tag to compare
  • A reminder regarding an October 2016 release: VGA240.EXE no longer prints "INT 10h hooked" nor clears the screen.
  • Cleanup of the make system
  • 8237 (DMA), 8259 (PIC), 8254 (PIT) updates for PC-9801/PC-9821 targets. Tested working on actual hardware.
  • PCI library PC-9821 support, though with extra code to handle a rather unfortunate shortcoming when probing PCI slots with no devices in it. Tested working on actual hardware.
  • ZIP4DOS tool, for generating ZIP archives intended specifically for MS-DOS (where InfoZIP is inadequate for the task). Character set conversion is available so that files on the host, in UTF-8 encoding, can be encoded for the target MS-DOS system (CP437 for USA MS-DOS or CP932 for Japanese PC-9801 MS-DOS). ZIP spanning is available, in which each "span" is emitted as a 1.44MB floppy disk image that you write to a floppy that then appears as a valid spanning archive to MS-DOS releases of PKUNZIP 2.x.
  • More work on Win386 VXD header defs.
  • Mouse driver for Windows 1.0 through Windows ME that allows "guest pointer integration" with DOSBox-X if the DOSBox Integrated Device is enabled. The integration allows interacting with Windows using the mouse without having to "capture" the mouse, and it makes it possible to operate the guest Windows system with your laptop/tablet touchscreen.

CGA splitscreen trickery release

22 Apr 14:16
Compare
Choose a tag to compare

CGA raster hacks, including the most recent hack enabling EGA/VGA-like splitscreen on the CGA.