|
Post by dshadoff on Dec 29, 2022 6:21:54 GMT
I've reverse-engineered the FX-BMP port, and now I've built a cartridge to use it - the PC-FX nvBMP ! This is a FX-BMP replacement which doesn't need to use batteries. The original ones are actually REALLY expensive on eBay etc., although with the semiconductor shortage, this cartridge might not be all that much cheaper... although it won't need batteries, so it won't mysteriously lose your data when you aren't looking, and you won't find corroded battery junk inside in a few years' time. Additionally, the FX-BMP is a 128KB cartridge; this one can accept larger memory chips if you so desire (and can afford them). MRAM (magneto-resistive RAM) chips are in use here, which are available in 512KB and 2MB sizes as well. The GitHub repository is here, and includes all the plans including designs for an enclosure which can be printed on a 3D Printer:: github.com/dshadoff/PC-FX-NVBMP
|
|
exodus
Punkic Cyborg
Posts: 160
|
Post by exodus on Jan 13, 2023 23:07:44 GMT
whoa, this is pretty amazing!! any chance you'd make and ship a few of these?
|
|
|
Post by dshadoff on Jan 14, 2023 0:01:58 GMT
Sorry, I won't be doing that - besides parts being hard to find, they are a bit time-consuming to make if any part of it has to be done outside of the PCB factory. Plus, shipping anything from Canada is just miserable. But with the plans up on GitHub, I'm sure somebody will do it...
|
|
|
Post by dshadoff on Jan 14, 2023 1:11:21 GMT
Oh, I should also mention... I'm making another cartridge like this which should act a little differently, but should be cheaper to make/get and more hobbyist-friendly too. Stay tuned...
|
|
exodus
Punkic Cyborg
Posts: 160
|
Post by exodus on Jan 18, 2023 23:17:27 GMT
No worries!! I'll stay tuned for that V2 as well.
|
|
herrg
Deep Blooper
Posts: 8
|
Post by herrg on Oct 4, 2023 14:43:06 GMT
Hi, how could you proceed with your v2 nvBMP so far? I'm loving your project and thinking about building myself a nvBMP cart. But the parts prices are quite high atm. So I'm wondering if it would it make sense to wait for your updated version. Thank you ^^
|
|
|
Post by dshadoff on Oct 4, 2023 15:29:14 GMT
Here is the project for the Flash version. github.com/pcfx-devel/PC-FX_FlashThis version boots from the cartridge, and allows you to save the full internal memory as snapshots (rather than individual game files). This means that it doesn't get managed by the boot screen, and can't be used as a storage location for games to save directly to. But it's also cheaper, since the main chip isn't $15US, it's closer to $4US.
|
|
herrg
Deep Blooper
Posts: 8
|
Post by herrg on Oct 4, 2023 18:27:19 GMT
Oh great!! Thanks for your quick response. I'll take a look into it. Love the idea of designing it as a boot device with integrated Management Tool. Just like a PC-FX Tennokoe Bank. Regarding your MRAM version as a 1:1 FX-BMP replacement, that variant will stay as-is, right?
|
|
|
Post by dshadoff on Oct 4, 2023 19:53:02 GMT
Yes, the MRAM version is complete, and can support MRAM chips of different densities, so you can make a FX-BMP that supports more memory if the price of MRAM doesn't bother you.
A note about the Flash version - I wrote a program to program the flash chip (with the boot code) via the PC-FX itself. It's a boot disc that programs a 'payload' program into the flash chip. It should be in the repository, but let me know if you have any questions.
|
|
herrg
Deep Blooper
Posts: 8
|
Post by herrg on Oct 4, 2023 20:57:51 GMT
Yeah I already took notice of the flash process and the CD image as it's very well documented inside your repo :-) I think I'll give that a go. jlpcb has all the necessary parts except the actual flash IC which has to be ordered seperately (8,50 USD for a pack of 5 on ebay). A really nice and smart Tennokoe-like solution for the PC-FX. I love it ^^
|
|
herrg
Deep Blooper
Posts: 8
|
Post by herrg on Nov 19, 2023 16:15:58 GMT
I finally received the flash chips this week and built the FX-FLASH carts today. Had to order a minimum of 5 PCBs from JLC so I built the whole pack. For the cases I decided for the rev.3 variant. After I found out that the new flash chips had contact issues due to corrosion and I cleaned and tinned them before soldering, everything went absolutely smooth. The flash process with the CD image worked great, and the built-in memory manager works right as expected. I could successfully swap the internal SRAM to the cart and back. Some thoughts regarding possible future updates: Flashing a new OS payload should be possible without destroying any of the backup slots. After I erased and re-flashed the cart the first backup slot got deleted as well, but however the higher slots were not. Obviously the erase function clears a bit more than the actual payload, but not the whole chip.
- I'm missing a function to delete single backup slots. I used some random slots for backup and restore tests that can't be cleared out unfortunately.
- It would be great to keep the cart plugged in and only start it when needed. Would it be possible to boot the backup manager only by a controller button press at boot?
Otherwise the FX-Flash does exactly what it's supposed to do and adds a great value to my PC-FX gaming ^^ If anyone is interested: I still have two units to give away. I'm only charging for my parts costs which should be somewhere around 30 EUR each (I've yet to calculate it exactly).
Some pictures:
|
|
|
Post by dshadoff on Nov 19, 2023 21:14:54 GMT
Some thoughts regarding possible future updates: - Flashing a new OS payload should be possible without destroying any of the backup slots. After I erased and re-flashed the cart the first backup slot got deleted as well, but however the higher slots were not. Obviously the erase function clears a bit more than the actual payload, but not the whole chip.
- I'm missing a function to delete single backup slots. I used some random slots for backup and restore tests that can't be cleared out unfortunately.
- It would be great to keep the cart plugged in and only start it when needed. Would it be possible to boot the backup manager only by a controller button press at boot?
Otherwise the FX-Flash does exactly what it's supposed to do and adds a great value to my PC-FX gaming ^^
I'm glad that you're pleased with the result ! As for the comments: Oh, this is interesting feedback. I wasn't expecting that behaviour. I'll try to take a look at that to see what is going on. I'd have to take a look at this too. It may not be easy to do, but I'll see if I can look into this when I review the above issue. Unfortunately the boot process is completely under the control of the BIOS, and it boots directly to the BMP cartridge before allowing any user input. In order to do this, the BIOS itself would need to be patched.
|
|
herrg
Deep Blooper
Posts: 8
|
Post by herrg on Nov 20, 2023 13:46:15 GMT
Oops I guess I mixed up something during my tests. I just tried to reproduce the behavior regarding the partly deleted backup slots. I dumped the SRAM to each of the first 8 flash slots and erased and re-flashed the module afterwards. In the end I still could still see all of the slots with their contents. I'm a bit confused comparing this to my first observations, but for now I would guess I mixed something up with the other 4 carts I made and would call it a false alert - sorry for that.
However, my other suggestions would still apply ;-)
Regarding the boot process interruption - couldn't that be checked at the beginning of the backup module boot process? So that if no button is pressed during the fx-flash init process you would directly jump to the default PC-FX OS start address or issue some kind of a soft reset? Or would you always have to issue a full reset which would eventually lead to a reset loop?
|
|
|
Post by dshadoff on Nov 20, 2023 17:04:49 GMT
Regarding the boot process interruption - couldn't that be checked at the beginning of the backup module boot process? So that if no button is pressed during the fx-flash init process you would directly jump to the default PC-FX OS start address or issue some kind of a soft reset? Or would you always have to issue a full reset which would eventually lead to a reset loop? I'm not aware of a soft-reset entry point... Somebody would need to step through the FX-BIOS to see where the cartridge bootup sequence takes place, and then see if there are any options for returning. Since there are at least two versions of the BIOS, I don't expect this to be feasible, as the "jump back" point probably wouldn't be the same in both cases. There is also some initialization inside the homebrew program, which may or may not affect the system state (which may affect the execution of subsequent programs)... There would need to be more research done in order to validate how realistic this is. I do like the idea though.
|
|
herrg
Deep Blooper
Posts: 8
|
Post by herrg on Nov 20, 2023 17:56:01 GMT
Hm OK, understood. Well, then there's at least one feature request left
|
|