Skip to content

MartyPC v0.1.2

Compare
Choose a tag to compare
@dbalsom dbalsom released this 30 Jun 00:34
· 482 commits to main since this release

MartyPC v0.1.2 brings some major performance improvements and quite a few fixes to emulated hardware. Thanks to everyone who has tested and reported issues!

MartyPC now includes a few demos and games for your enjoyment out of the box.

Please see the new MartyPC User Guide.

  • Relicensed MartyPC under the MIT license.
  • Redesigned CGA card with 'dynamic clocking' support. Card will now switch between clocking by cycle or character as appropriate.
  • Improved hsync logic, screens in all graphics modes are now horizontally centered properly.
  • Added 1.44MB floppy image definition. Somehow, these are readable(!?) (thanks xcloudplatform for discovering this)
  • Fixed CGA palette handling bug. Fixes California Games CGAMORE mode. (thanks VileR)
  • Added short tick delay between writing PIC IMR and raising any unmasked IRR bit to INTR. Fixes halts on warm boot.
  • Improved performance when CPU is halted.
  • Added menu options to save changes to loaded floppy image(s).
  • Fixed CPU cycle tracelogging
  • Added port mirrors for CGA (thanks th3bar0n)
  • Fixed address wrapping for graphics modes (thanks th3bar0n)
  • Fixed handling of mode enable flag in text mode (thanks VileR)
  • Implemented better composite adjustment defaults (Matches colors in 8088mph better)
  • Switched from cgmath to glam vector library. Approx 30% speedup in CGA composite simulation.
  • Utilized bytemuck crate to write 32 bits at a time for CGA index->RGBA conversion, about 3x performance improvement
  • Reorganized project structure. Refactored emulator core to Rust library and frontend components.
  • Added Criterion for benchmarking components.
  • Update Pixels library to 0.12.1
  • Use fast_image_resize crate for SIMD acceleration. Aspect correction is now approximately 5X faster with equivalent quality.
  • Fixed inaccuracy in keyboard shift register handling
  • Fixed bug in PIT latch logic (thanks 640KB)
  • Fixed bug in PIC IRR logic (thanks 640KB)
  • Fixed bug in PPI handling of keyboard enable line (Fixes halt on boot on 5160)
  • Added CTRL-ALT-DEL menu option
  • Known issues:
    • Turbo mode may cause the IBM BIOS to halt during POST during PIT checkout.
    • Formatting floppies is limited to 360K due to fixed drive type.
    • Regression: PIT latch logic change has now made 8088MPH report a 1% CPU variation. I believe this is more a timer issue than a CPU issue.