Releases: YouMakeTech/Pico-GB
RP2040-GB for Pico-GB-v20250207
RP2040-GB emulator for Pico-GB
What is new
Update peanut_gb.h with the latest version from deltabeard. A huge thanks to deltabeard for his continuous updates and improvements to the emulator!
- gb: use uint8_t for bitfields: Slight reduction in CPU instructions for ARM Cortex m0+.
- gb: Fix RTC on ROMs with no RAM
Fixed an issue whereby RTC was disabled by Peanut-GB when an MBC3 with
no RAM was playing.
Closes deltabeard/Peanut-GB#84. - gb: add RTC latch to MBC3
- gb: tick RTC with CPU emulation
- gb: fix incorrect RTC variable name
- gb: fix RTC writing
- gb: allow disabling 16-bit colour palette
Use the define PEANUT_GB_16BIT_COLOUR to enable or disable the 16-bit
colour palette. - gb: rename 16bit colour mode to 12 colour
The define incorrectly mentions a 16-bit colour mode, when it fact it's
actually 12 color. PEANUT_GB_12_COLOUR is defined to 1 by default, and allows for the use
of 12 colours. If this is set 0, then only 4 shades of colour are output
to lcd_draw_line(). - gb: fix relative jump CPU comments
- gb: fix spelling errors
- gb: pass invalid rollovers RTC test
- gb: use bool bitfields for joypad
- gb: replace IO_BANK with IO_BOOT
Removes duplicate IO define and fixes issue deltabeard/Peanut-GB#111. - gb: fix bootrom being re-enabled
Fixed issue deltabeard/Peanut-GB#110 whereby a spurious write could enable the bootrom.
Previously, the bootrom could be enabled by writing 0 to 0xFF50. But
this is not possible on real hardware after the bootrom writes 1 to
0xFF50. No game is expected to attempt to re-enable the bootrom, but a
bug in a game or the emulator could cause it to happen.
If the bootrom was enabled by the game, and the gb_bootrom_read function
was set to NULL, then a NULL pointer exception was possible. - gb: Add GB_INIT_INVALID_MAX
- gb: fix infinite loop on infinite halt
Fixes issue deltabeard/Peanut-GB#83 whereby the Game Boy may be placed into HALT mode
indefinitely, which is a valid state to be in (e.g. when Dragon Quest
III puts a message on the screen forever). Peanut-GB now returns on each
VBLANK (which means after rendering each frame), to allow the emulation
to continue. - gb: mark deprecated functions
- gb: go to OAM Search after VBLANK
- gb: shift f bits to correct nibble
- gb: unused bit of IO_STAT fixed to 1
- gb: start audio when not using bootrom
Fixed an issue whereby the audio was not enabled when a bootrom was not
in use. The audio is enabled by the bootrom. Some games, Such as Final
Fantasy Legend III rely on this behaviour to have audio in the game. - gb: fix incorrect LCD state on new scanline
Fixed an issue whereby the LCD was put in to HBlank mode on a new
scanline rather than OAM Scan.
This fixes Final Fantasy Legend III crashing on entering a battle from
the overworld, and the flickering in Prince of Persia(deltabeard/Peanut-GB#73). - gb: fix cart RAM writes on MBC5 [Commit b03b99e on Jan 19, 2025]
Fixed an issue whereby only the first bank on MBC5 RAM was being written
to. This fixes LSDJ.
Fixed an issue whereby the upper nibble of data stored in MBC2 RAM was
set to LOW instead of HIGH.
RP2040-GB for Pico-GB-v20230510
RP2040-GB emulator for Pico-GB
What is new
Update peanut_gb.h with latest version from deltabeard (commit 3d5ee50 May 4,2023):
- gb: fix setting ROM bank in MBC2 games
- gb: fix MBC2 reading and writing. Fixes issue deltabeard/Peanut-GB#80 whereby Final Fantasy Legend would crash on start up. This should also fix issues with other MBC2 games.
- debug: fix compile errors. Additionally added printf debugging help fix issues with Peanut-GB.
RP2040-GB for Pico-GB-v20230423
RP2040-GB emulator for Pico-GB
What is new
Update peanut_gb.h with latest version from deltabeard (commit ef26527):
- Merge branch 'ppu-fix'
- gb: inline __gb_lcd_tick for performance
RP2040-GB for Pico-GB-v20230405
RP2040-GB emulator for Pico-GB
What is new
Update peanut_gb.h with latest version from deltabeard (commit bbf094a)
gb: fix LY=LYC timing
This fixes an issue whereby LY was being incremented after the
comparison with LY=LYC. This fixes the dmg-acid2 test.
RP2040-GB for Pico-GB-v20230308
RP2040-GB emulator for Pico-GB
What is new
- Check flash memory against SD card rom file after copy
- Load save game just before starting the emulation
RP2040-GB for Pico-GB-v20230307
RP2040-GB emulator for Pico-GB Game Boy emulator handheld gaming console for Raspberry Pi Pico
What is new
select + A: enable/disable frame-skip => fast-forward
RP2040-GB for Pico-GB-v20230305
RP2040-GB emulator for Pico-GB Game Boy emulator handheld gaming console for Raspberry Pi Pico
What is new
-
Game selection menu: A menu is added to the emulator, which reads the roms from the SD card and shows them on screen for the user to select, flash and play
D-PAD UP/DOWN | Next/previous item in the menu
D-PAD LEFT/RIGHT | Next/previous page
A or B | Flash and start the game
START | Start the last game from flash (without rewriting, preserve the flash memory) -
In-game emulator controls
SELECT+START | Resets back to the SD card menu. Game saves are saved to the SD card.
SELECT+UP/DOWN | Increase/decrease sound volume
SELECT+RIGHT/LEFT | Switch between manual color palette
RP2040-GB-v20230213
RP2040-GB emulator for Pico-GB GameBoy Handheld Emulator Console for Raspberry Pi Pico
What is new
- Accurate frame rate (~60 FPS) thanks to Raspberry Pi Pico overclocking to 266MHz
- I2S sound support (44.1kHz 16 bits stereo audio)
- Automatic color palette selection for some games (emulation of Game Boy Color Bootstrap ROM)
- Manual color palette selection at startup with hotkeys (hold Right, A+Down, Up,B+Right,B+Left,Down,B+Up,A+Right,A+Left,A+Up,Left or B+Down when powering the device on)
- Save game progress on sd card (press start+select anytime to save and reset game)
Initial release
20220623 Add pins assignements for Pico-GB