Commit Graph
13 Commits
Author SHA1 Message Date
Matthew Laux 9eab2e1f2f be a better Mac citizen and reorganize emulator.c
* aloow opening ROMs from finder when the app is already open
* set "Missing application name resource" in saves/cache files
* show alert when opening a cache file
2026-08-04 01:05:41 -05:00
Matthew Laux bd509d708b support 2 and 4 bit screens 2026-07-30 16:46:23 -05:00
Matthew Laux 565e41e32d remove useless video_mode pref 2026-07-24 16:13:54 -05:00
Matthew Laux 4e25b82397 new menu layout! remove preferences dialog 2026-07-24 16:09:50 -05:00
Matthew Laux 5464e0721f remove STAT throttling, add a menu option instead 2026-07-12 17:39:17 -05:00
Matthew Laux ed37a7c185 half-remove cycles_per_exit, optimize STAT interrupts, but will remove 2026-07-12 17:18:06 -05:00
Tanner Fokkens 83054f8e45 Add Ignore Double Speed option for CGB performance
Games running in double-speed mode (8MHz) cause the emulator to execute
twice as many instructions per frame. This option ignores the double-speed
flag, treating all execution as normal speed for better performance on
slower Macs while maintaining correct frame timing.

- Add menu toggle in Options menu
- Save/load preference to resource file
- Check flag in dmg_sync_hw() when calculating PPU cycles
2026-02-01 00:58:48 -08:00
Tanner Fokkens 9bb5705759 Add Game Boy Color support
- New CGB state management (cgb.c/cgb.h)
  - VRAM banking (VBK register)
  - WRAM banking (SVBK register, banks 1-7)
  - Speed switching (KEY1 register)
  - HDMA transfers (HDMA1-5 registers)
  - CGB palette registers (BCPS/BCPD, OCPS/OCPD)

- CGB rendering (lcd_cgb.c, lcd_mac_cgb.c)
  - Tile attributes from VRAM bank 1
  - Per-tile palettes, H/V flip, priority
  - 8 background and 8 sprite palettes
  - RGB555 to Mac indexed color conversion

- JIT initialization sets A=$11 for CGB mode detection

- UI: "Run as GBC" menu option, .gbc file filter

Working: Tetris DX, Pokemon Gold
Known issues: Crystal, SMB Deluxe, LADX hang at boot
2026-02-01 00:57:25 -08:00
Matthew Laux 7ec78c3267 first round of final tweaks before release 2026-01-24 17:37:15 -06:00
Matthew Laux 9f91bd7526 add 1x scale, audio refactor and fix wave frequency issue, remove crazy SP detection and always go through dmg_read/write 2026-01-13 21:47:25 -06:00
Matthew Laux 464efb2b6d select video mode with options dialog 2026-01-10 13:36:25 -06:00
Matthew Laux eaef7441ed color mac support 2026-01-10 02:43:00 -06:00
Matthew Laux ea687bed84 finish options dialog 2026-01-08 20:28:10 -06:00