Super GameBoy like for PS1 !

General information to do with the PlayStation 1 Hardware. Including modchips, pinouts, rare or obscure development equipment, etc.
Orion_
Verified
Legendary Programmer
Legendary Programmer
Posts: 240
Joined: Aug 13, 2012
I am a: Programmer
PlayStation Model: Net Yaroze
Location: France
Contact:

Post by Orion_ » January 28th, 2018, 7:40 am

Great that the ROM have been dumped, maybe we could understand how the hardware is used to dump the ROM and emulate it, then if someone with lots of motivation could make a better emulator, we could reflash the hardware with this new emulator and it would be much more usable :)
Retro game development on Playstation and other consoles http://orionsoft.free.fr/

kHn
Active PSXDEV User
Active PSXDEV User
Posts: 40
Joined: Nov 08, 2017

Post by kHn » January 28th, 2018, 7:49 am

In fact, it's been dumped years ago.

Also, here's a bootleg ROM, from EMS I guess :
GB Hunter version 1.3.rom
Image

pepe
Curious PSXDEV User
Curious PSXDEV User
Posts: 28
Joined: Mar 26, 2015

Post by pepe » January 28th, 2018, 7:58 am

the rom "Innovation Super GB Booster " is not dumped

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » January 28th, 2018, 12:47 pm

pepe wrote: January 28th, 2018, 7:12 am Does anyone know how to change the internal images and game booster logo ?
first is necessary to extract the images to modify
Yeah, you'll have to open the ROM and find the TIM headers. Then, extract the TIM's and replace them 1:1 with the ones you want.
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.

PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.

Orion_
Verified
Legendary Programmer
Legendary Programmer
Posts: 240
Joined: Aug 13, 2012
I am a: Programmer
PlayStation Model: Net Yaroze
Location: France
Contact:

Post by Orion_ » January 29th, 2018, 4:43 am

ok I took some time today to write a little program to dump the ROM, pack it and write it onto 2 memory card so I could retrieve the data on my computer using my USB PS1 Memory card reader tool.
I verified the integrity of the ROM using SHA1 algorithm computed directly on the PSX
Here is the file: http://onorisoft.free.fr/psx/Karat_Game_Booster_JP.zip
The header is very similar to the GameHunter 1.3 rom posted on this topic but with some differences.

pepe > How can you run this rom under an emulator like no$psx ?

I hope someone can disassemble the rom to understand how to access the Gameboy port.
The ROM seems flashable using XFlash, maybe we can make a better gameboy emulator and flash it to this nice cartridge :)

Or maybe like pepe said, if copying a 32kb game at the end of the action replay rom works, then maybe the PAL chip inside the cardridge just map the Gameboy data at the end of the AR ROM address ? and then you need to use the classic gameboy bankswitching technic to get the rest of the data (which explain how a bigger GB rom works on the real hardware but not on no$psx emulator)
I really wonder how pepe achived to run this AR Rom on no$psx because I can't find a way to load any data in the memory of no$psx :/
I will try to read beyond the AR Rom with a GB cartridge attached to the device to see if it dumps the GB Rom on the fly !
Retro game development on Playstation and other consoles http://orionsoft.free.fr/

kHn
Active PSXDEV User
Active PSXDEV User
Posts: 40
Joined: Nov 08, 2017

Post by kHn » January 29th, 2018, 8:26 am

Orion_ wrote: January 29th, 2018, 4:43 amok I took some time today to write a little program to dump the ROM, pack it and write it onto 2 memory card so I could retrieve the data on my computer using my USB PS1 Memory card reader tool.
I verified the integrity of the ROM using SHA1 algorithm computed directly on the PSX
Here is the file: http://onorisoft.free.fr/psx/Karat_Game_Booster_JP.zip
The header is very similar to the GameHunter 1.3 rom posted on this topic but with some differences.
Thanks very much for sharing !
Do you allow me to put it in the next X-Flash mod update ? Your rom is missing from our set.
Orion_ wrote: January 29th, 2018, 4:43 amOr maybe like pepe said, if copying a 32kb game at the end of the action replay rom works, then maybe the PAL chip inside the cardridge just map the Gameboy data at the end of the AR ROM address ?
I don't have a GB game so I could not check, but yeah, from what I saw after a quick disasm of the emu, the GB Rom gets mapped at 1F040000h by the PAL. At least, the emu accesses it from here, and copies it to the RAM.
In TETRIS.EXE, I did change a few 1F040000h pointers to 80050000h (only in the copy function) for it to load the embedded Tetris ROM. Though I have not done further researches.
As for how it swaps banks and remaps the upper part, perhaps it's done with a simple command.
Orion_ wrote: January 29th, 2018, 4:43 amI really wonder how pepe achived to run this AR Rom on no$psx because I can't find a way to load any data in the memory of no$psx :/
File/Load Diskimage/rom file worked when I tried with the UK rom. GB Hunter has crashed for some reason. I hope it's not a bad dump...
EDIT : Tried your rom. Stuck here, after the Game Booster splash screen :
Image

Orion_
Verified
Legendary Programmer
Legendary Programmer
Posts: 240
Joined: Aug 13, 2012
I am a: Programmer
PlayStation Model: Net Yaroze
Location: France
Contact:

Post by Orion_ » January 29th, 2018, 7:23 pm

kHn wrote: January 29th, 2018, 8:26 am Thanks very much for sharing !
Do you allow me to put it in the next X-Flash mod update ? Your rom is missing from our set.
Yes of course :)
kHn wrote: January 29th, 2018, 8:26 am I don't have a GB game so I could not check, but yeah, from what I saw after a quick disasm of the emu, the GB Rom gets mapped at 1F040000h by the PAL. At least, the emu accesses it from here, and copies it to the RAM.
In TETRIS.EXE, I did change a few 1F040000h pointers to 80050000h (only in the copy function) for it to load the embedded Tetris ROM. Though I have not done further researches.
As for how it swaps banks and remaps the upper part, perhaps it's done with a simple command.
Thanks for this info !
As for the bank swapping, I was talking about the Gameboy bank swap, the PAL chip don't have to handle this, it's the MBC chip inside the Gameboy cartridge that is handling the bank switch, since the Gameboy addressing it limited to 64k (32k for the ROM)
I really need to find a way to upload a program on my PSX without using the Xplorer FX, I will try PSXserial to do some testing.
kHn wrote: January 29th, 2018, 8:26 am File/Load Diskimage/rom file worked when I tried with the UK rom. GB Hunter has crashed for some reason. I hope it's not a bad dump...
It's not working on my side, I use the latest version 2.0 of no$psx, but all I get is the emulator freezing on a black screen.
I use File/Load Diskimage but it seems that it only accept CDrom image
Retro game development on Playstation and other consoles http://orionsoft.free.fr/

pepe
Curious PSXDEV User
Curious PSXDEV User
Posts: 28
Joined: Mar 26, 2015

Post by pepe » March 24th, 2018, 11:22 am

the only way to know how this works would be to dump the memory from a real psx using cartridge greater to 32 kb

User avatar
CodeAsm
Verified
Active PSXDEV User
Active PSXDEV User
Posts: 69
Joined: Jan 13, 2012
I am a: Programmer, Student
Location: The Netherlands
Contact:

Post by CodeAsm » March 28th, 2018, 1:15 am

Spipis wrote: January 28th, 2018, 7:36 am WOW!
After two years what an unexpected surprise!
Thank you guys for sharing all these informations and files!

I think we should better find a way for the emulator to load files straight from a folder.
I think you better eitehr reverseengineer their emulation core or compile your own emulator for the PS1. its probably made to look for it on the memorybus, not on a disk filesystem or some SD card loading mechanism.
Development Console: SCPH-102, unkown clone Modchip, PAL , FTDI board build into the case (microUSB) for Serial I/O.
Development Computer: GNU/Linux, Arch x86_64 Linux 4.20.3, i7-3632QM [8x3.2GHz], 11,8GiB, 1366x768 GeForce GT 630M (Optimus tech), lots of gig of storage

pepe
Curious PSXDEV User
Curious PSXDEV User
Posts: 28
Joined: Mar 26, 2015

Post by pepe » March 30th, 2018, 6:26 am


pepe
Curious PSXDEV User
Curious PSXDEV User
Posts: 28
Joined: Mar 26, 2015

Post by pepe » September 13th, 2018, 8:53 am

I have problems loading the sram from cartridge,no load any data
game booster automatic load the sram or not ?

saving sram to cartridge shows the message "Error"

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » October 30th, 2020, 7:29 pm

I've dumped both eeproms from my E.M.S. TopView Movie Card device.
Both are 256k.
The VCD eeprom content is encrypted (bits inverted), the GAME eeprom code is found in its usual form.
The rom is labeled E.M.S. Golden Finger CD (2M) 2.3 but didn't look like a normal 256k rom.
I was wondering what the code past 0x20000 was.
Turns out its a Game Boy emulator based on the GB Hunter as found in the Gold Finger 2 in 1 / Gold Finger 3 in 1 devices (also from E.M.S.).
Huge thanks to kHn for pointing this out. :D

You'll need to put some .GB rom files on a mode 2 disc and load them from the CD-ROM(plus) menu.
As for using the rom itself, an AR/GS v2 cart or equivalent clone is required to get it to work if you don't own a TopView device.

I've only quickly tested Castlevania 1 , Castlevania 2, Super Mario Land, Tennis and Tetris so far (all headerless).
They all worked but without any sound emulation at all.
Frame rate isn't great and varies from a game to another.

Enjoy... or not ! :mrgreen:
You do not have the required permissions to view the files attached to this post.

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » November 4th, 2020, 3:17 pm

If someone is really keen on playing Game Boy games on a PSX, you're honestly rather off coding up your own Z80 emulator and then emulating the rest of the Game Boy hardware. The PlayStation can easily handle it. This cartridge emulator is just written horribly :P
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.

PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » November 23rd, 2020, 10:42 am

pepe wrote: January 28th, 2018, 7:58 am the rom "Innovation Super GB Booster " is not dumped
Here's the Innovation Super GB Booster Plus dump.
Comes with a 512k SST 28SF040 eeprom.
There're 2 switches on the devices, one is used to select each 256k bank, see manual from the link for details.
You do not have the required permissions to view the files attached to this post.

User avatar
SONIC3D
Curious PSXDEV User
Curious PSXDEV User
Posts: 10
Joined: Jun 09, 2021

Post by SONIC3D » June 13th, 2021, 9:41 pm

Add 2 schematic diagrams for this old topic, the original Japanese version, and the Innovation clone.
In image format and vector pdf format.

Notes on the Innovation clone:
There are 2 switches on this cart.
  • The lower one (H8 in the schematic): Switch to the upper position(GND) for the Cheating feature, switch to the lower position(+5V) for the GB emulator.
  • The upper one (H7 in the schematic): (Only used in Cheating feature) Switch to the upper position(+5V) for enable Cheating feature, switch to the lower position(GND) for disabling it.
For the ROM file, @Squaresoft74 has already shared the dumps. This cartridge has one SST 28SF040 Flash ROM in 512K bytes.
  • The first 128KB space is "EMS Golden Finger CD (MAX) 1.1". This is a Caetla based hack, and hacked Flash ROM access code to adopt 28SF040 write command(non-JEDEC standard). DO NOT flash with other Caetla variants, as they are not adopted to 28SF040 command. Any cheat DB modification will cause them halt immediately.
  • The 2nd and 3rd 128KB space(256KB in total) are "Innovation GB Hunter (Datel Hack)". This is a ROM based on Datel's but changed the LOGO and the internal game Rebound Mission is also disabled.
  • The 4th 128KB space is empty. Filled with 0xFF. Not used in this product.
:roll:
Karat GB GameBooster.jpg
Super GB Booster Plus.jpg
You do not have the required permissions to view the files attached to this post.

User avatar
SONIC3D
Curious PSXDEV User
Curious PSXDEV User
Posts: 10
Joined: Jun 09, 2021

Post by SONIC3D » June 13th, 2021, 10:29 pm

Additional notes on both the original one and the knock-off:

The GB ROM is mapped to 0x1F040000-0x1F04FFFF.
The GB_A0-A14 are directly connected to PS1_EXP_A0-A14. So there should be no problem for software in direct access to 0x0000-0x7FFF region on cartridge address.
Assuming we expect the emulator support Gameboy MBC1 mapper:
If the emulator re-copy the 0x4000-0x7FFF to system memory after doing any bank switch. Then ROM banking of MBC1 is fully supported.


But for SRAM usage, the emulator need to access 0xA000-0xBFFF on cartridge. It should be 0x1F04A000-0x1F04BFFF on this hardware(the PS_EXP_A15 line is 1(high) in this case). And the SRAM_CS line on GB cart should be pulled down to enable.
Turn into the logic code:

Code: Select all

GB_A15 = PS_EXP_A15
!GB_SRAM_CS = PS_EXP_A15
The GB_A15 and /GB_SRAM_CS are controlled by PLD chip. But the PS_EXP_A15 is not grabbed as an input signal for the PLD. So it's not possible for this hardware to take action on GB_A15 and /GB_SRAM_CS lines on saving. The MBC1 SRAM access won't be usable.


I have not attached logic analyzer on GB_A15 line and /GB_SRAM_CS line. But I guess they are always GB_A15=0 and /GB_SRAM_CS=1.

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 9 guests