+retroclouds Posted July 10, 2021 Share Posted July 10, 2021 Hi, I got some questions on Ubergrom after watching @Tursi's excellent tutorial video. Is it possible to use a bank-switched RAM as the rom part of a cartridge. Does such component even exist as chip? Could imagine copying the ROM part of a cartridge from GRAM, not sure how I would be able to bank-switch though. Must the cartridge header be present in each rom bank when using UBERGROM, or is it sufficient to only have it in bank 0, as is the case with the finalGROM. Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted July 10, 2021 Share Posted July 10, 2021 https://endlos99.github.io/finalgrom99/ The author notes that it always starts with bank 0 selected. In the section labelled 'Advanced modes' under '... How to develop...' the details of bank switching RAM are provided. It comes up often, and is different than what people assume. Edit , sorry, I didn't read carefully, and assumed these questions were about the finalGrom. Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted July 10, 2021 Share Posted July 10, 2021 Take two: The cartridge ROM space of the UberGROM is flash memory, not RAM. That flash is not programmable by the 4A. I believe it still uses the latch with undefined power on state, so bank selection must be controlled, either by headers in all banks, or by GROM code. 3 Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted July 10, 2021 Share Posted July 10, 2021 Note, I make sure that every UberGROM board I build consistently starts in the first or the last bank of ROM to avoid potential start issues (just put headers in the first and last banks and all should work appropriately). The ROM side is a flash chip and you can't safely use RAM in its place, as the bank switch writes will overwrite parts of your program (the memory is not protected in any way). I have seen 512K PLCC RAM chips, but IIRC, they actually have a slightly different pinout, so they are not direct replacements for the flash chip used now. This version of the board does not have in-system programming capability for the 29F040/49F040 flash chips (on the ROM side), but it is possible to program the Atmel1284P (GROM side) in-system. Tursi also wrote a GROM header that forces the ROM to bank 0, IIRC, although I believe @Gazoo wrote one as well. 2 Quote Link to comment Share on other sites More sharing options...
Tursi Posted July 10, 2021 Share Posted July 10, 2021 It's a little confusing because I called just my chip the UberGROM, but the whole board is often called that. So when /I/ say UberGROM, as in my videos, I'm only talking about my GROM replacement. It doesn't have any ties to the ROM/CPU memory side of things. I mention that since you say you started with my video. For the board itself, you've got the answers there 3 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.