114 Commits

Author SHA1 Message Date
paulb-nl
016f45bc7b 3D LUT for color correction. Fix OAM in save state. (#282)
* Move Cart RAM to SDRAM

Used the SDRAM controller from the NES core

* 3D LUT for color correction. Load custom LUT

* Add custom LUTs

* Fix OAM saving to save state
2026-04-13 15:23:58 +08:00
Keith Conger
71fcc15472 MegaDuck Laptop Support (#281) 2026-04-02 15:02:53 +08:00
Mark Johnson
1b131a0de1 Timer module rewrite, APU clocked from timer (#280)
* Rework timer modules to resolve #101

Sound clock is passed to the APU but is not currently being used. Work needed to match this up.

* Rename APU frame clock.

* VHDL-2008 fix.

* Fix APU clock to 1x CPU clock.

* Clarify machine cycles in timer.

* Whitespace

* Add APU channel enables for debugging.

* Fix timer generated sound clk

R14 - Audio issues remain for 2X CPU games

* Fix issue with 2x gameboy APU sound clock

R22

* Re-implement sound clocking in timer module.

R25, Remove old code N.B. Likely a bug still here.

* Fix timer generated APU clock to 4 MiHz cycle.

R27

* Tidy up.

Remove attribution in timer module since doing a full rewrite.

* Disabling TAC can generate a clock-edge

Thanks to @paulb-nl for pointing out

* Prevent name clash

* Rework timer modules to resolve #101

Sound clock is passed to the APU but is not currently being used. Work needed to match this up.

* Rename APU frame clock.

* VHDL-2008 fix.

* Fix APU clock to 1x CPU clock.

* Clarify machine cycles in timer.

* Whitespace

* Add APU channel enables for debugging.

* Fix timer generated sound clk

R14 - Audio issues remain for 2X CPU games

* Fix issue with 2x gameboy APU sound clock

R22

* Re-implement sound clocking in timer module.

R25, Remove old code N.B. Likely a bug still here.

* Fix timer generated APU clock to 4 MiHz cycle.

R27

* Tidy up.

Remove attribution in timer module since doing a full rewrite.

* Disabling TAC can generate a clock-edge

Thanks to @paulb-nl for pointing out

* Prevent name clash

* Remove unused variable

* Set en_len_r on same cycle as en_len

* Buffer en_len to en_len_r properly

* Remove debug tools
2026-03-22 21:32:35 +08:00
Keith Conger
f36baf98ad insideGadgets Keyboard and Mouse emulation (#279) 2026-03-20 14:27:49 +08:00
Keith Conger
ef2ca135d5 Workboy (#278)
* Workboy emulation

* Update ReadMe.md
2026-02-18 13:44:10 +08:00
Sorgelig
f7464db6c1 Update sys. 2025-06-18 21:22:03 +08:00
paulb-nl
ee8bf4c29f Add option for extra sprites
Maximum of 6 extra sprites per line
Extra sprites are fetched during mode2 to not break mode3 timing
2025-06-15 09:32:45 +02:00
paulb-nl
fe5758fd33 Add option to remove audio pops (#257)
Some audio can be inaccurate with this option enabled.
2024-09-05 13:42:36 +08:00
Mark Johnson
c2598adcf9 CGB -> GBC 2023-04-15 00:37:27 +01:00
Mark Johnson
ff7db6a614 Add bootrom compiler flow (#231)
* Add makefile for bootrom compilation


Add flag for SameBoy compilation, separate asm sources

Also adds WIndows make switches
Replace SameBoy PB12 encoding with old encoding

GameBoy logo still not 100%
Clarify Makefile, add image compilation


Remove sameboy source

* Remove DMG emulation of CGB games


Remove unused variable.


Change logo extension


Remove rgbgfx option

Nintendo logo correct now
Explicitly define slice

* Remove palette selection for CGB games

* Old-style Gameboy logo

* Add GBA menu option for built-in CGB rom

* Restore original DMG scrolling animation

* Add original CGB bios checksum verification

* Add fastboot option to DMG/CGB bootroms, create new OSD submenu

Also add further checksums for CGB0 bootrom and equivalent checksum C code. Grouped together all bootrom items into new submenu. Removed redundant bootroms (AGB, fastboot)

* Update README and give SameBoy attribution

Clean up checksum + make

* Incorporate latest SameBoy boot changes

Gives correct register values on boot

* Update readme

* Add AGB alternative boot color

---------

Co-authored-by: Mark Johnson <mark.ai.johnson@pm.me>
2023-02-13 00:13:19 +08:00
paulb-nl
2439aa4747 Delay blanking the screen for GBC
Repeat last frame when the LCD is disabled for a short time only.
2022-12-29 17:13:53 +01:00
paulb-nl
310be30d76 Implement KEY0 and OPRI registers 2022-11-26 16:13:39 +01:00
Mark Johnson
d7863e1417 Fix output multiplier sign handling (#222) 2022-11-14 20:14:19 +08:00
paulb-nl
f1cd3472b0 MBC3: Pause RTC subsecond counter when halted. (rtc3test) (#214)
Also change to 32768Hz clock enable for RTC
2022-10-17 16:17:35 +08:00
paulb-nl
6e42c77c95 Update sys. 2022-08-06 20:44:07 +02:00
paulb-nl
d25e0d64e7 Add Wisdom Tree / Mani 161 mappers & mapper selection. 2022-08-06 17:33:46 +02:00
paulb-nl
c9e40b3514 Add loading of custom Game Boy bootroms 2022-07-22 21:22:57 +02:00
Jamie Blanks
9a27220b15 add rumble support (#202) 2022-04-28 23:22:39 +08:00
Jamie Blanks
3cea62ca86 Add MegaDuck system support (#201) 2022-04-17 16:25:10 +08:00
Sorgelig
a5decbd2e3 Update sys. 2022-02-01 03:16:34 +08:00
Jamie Blanks
4e057fe307 add option to enable special gba features in gbc games (#194) 2022-01-28 23:45:12 +08:00
Jamie Blanks
720cae3e30 add option to drop shadow like DMG screen (#193) 2022-01-17 22:52:03 +08:00
paulb-nl
38c91eda8d Update sys. 2021-11-07 12:57:19 +01:00
paulb-nl
5084751906 Rework cartridge bus & add open bus behavior (#182)
Fix freezes in Tokyo Disneyland - Fantasy Tour (Minnie's house) &
Daiku no Gen-san - Kachikachi no Tonkachi ga Kachi (Stage 1-4)
2021-10-24 23:25:21 +08:00
sorgelig
b938516fa2 Update sys. 2021-09-30 22:41:32 +08:00
paulb-nl
29b97268fd Add Rocket mapper 2021-09-08 16:11:12 +02:00
paulb-nl
bd97ea80ef Add MBC6 & HuC3 mappers (#170) 2021-06-12 05:54:57 +08:00
paulb-nl
bc82226ff4 Add option for Super GameBoy+GBC 2021-05-28 13:07:43 +02:00
paulb-nl
c2f29236f5 Add option for wider analog video 2021-05-20 22:00:02 +02:00
sorgelig
cb462d60d5 Update sys. 2021-05-08 14:56:26 +08:00
Robert Peip
cc8e809cfd new multislot savestate handling with gamepad support 2021-04-16 08:45:26 +02:00
paulb-nl
61758b8ed3 Add MBC7 mapper 2021-04-03 21:32:23 +02:00
paulb-nl
9bd086ffcd Mapper cleanup 2021-03-31 12:31:13 +02:00
sorgelig
8aa7dace92 disable boot0.rom autoload. 2021-03-29 22:57:03 +08:00
sorgelig
f4f1e132c2 Update sys. 2021-03-28 23:53:44 +08:00
paulb-nl
c704e13784 Add menu pages 2021-03-28 13:56:42 +02:00
paulb-nl
1bc66377d3 SGB: Add option to load SGB border 2021-03-27 14:16:21 +01:00
sorgelig
fecd030da5 Update sys. HV-Integer scale. 2021-02-27 03:36:51 +08:00
RobertPeip
b5e8f6e117 fix all hwio registers and readback for cgb, some for dmg (#142)
* fix all hwio registers and readback for cgb, some for dmg

* add joypad register initial values for SGB

* add sameboy SGB Bootrom to be loaded when SGB is selected

* (from paulb-nl)
SGB: Fix for SGB bios unused commands
savestate/reset: corrected startup values for Video3 group
2021-02-02 23:12:40 +08:00
sorgelig
3e580a7633 Update sys. 2021-01-30 19:49:18 +08:00
Robert Peip
73cbb3a1cd improved version of mbc1/2 special case handling 2021-01-28 18:13:53 +01:00
Robert Peip
f702d5486b fix MBC bank select and ram write disable, fix fastforward with OAM DMA 2021-01-28 16:12:34 +01:00
RobertPeip
83eacfb2d5 add RTC internal functionality and saving to sdcard (append to savegame) (#134) 2021-01-22 20:22:24 +08:00
RobertPeip
263f1fa2fa fix fastforward soundoption with FF-toggle mode (#130) 2021-01-17 18:25:50 +08:00
Robert Peip
6d941d76af add option for raw colors 2021-01-07 23:35:24 +01:00
RobertPeip
31563c2ef6 improved rewind capture performance (#127)
fixed random fastforward crash
fixed fastforward Video glitches(HDMA)
added fastforward toggle (short button press)
added savestate OSD entry and multiple slots using keyboard(F1-F4)
add MBC detection and address translation to simulation
2021-01-06 15:33:24 +08:00
RobertPeip
ca8b55dfb3 added savestates and rewind feature (#123) 2020-12-29 23:38:30 +08:00
RobertPeip
65d6e59cc2 redone fastforward and pause handling to fix sdram access and refresh bugs and increase fastforward speed, some fixes to simulation 2020-12-19 19:28:19 +08:00
paulb-nl
0a89fd5445 MBC1 fixes and MBC1M support (#117) 2020-12-17 22:12:06 +08:00
Robert Peip
2d965da323 add fastforward and OSD-Pause feature 2020-12-15 15:24:33 +01:00