marc.hull Posted March 20, 2016 Share Posted March 20, 2016 Last couple of months Jim and I have been hashing out a new ROM cart design that allows EPROMs up to 512k that only need a header in the first bank. Cold boot or warm restart, bank 0 will always be active at the scan. Banking logic is (from what Jim says) compatible with the current system. Took 2 iterations and then a last second redesign but alls well that ends well. Stupid how simple it actually was. Look for these to be available soon from Jim or I. Hull.... 2 Quote Link to comment Share on other sites More sharing options...
+acadiel Posted March 20, 2016 Share Posted March 20, 2016 Technical details... are you doing a write to >6000 or something on boot? Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted March 20, 2016 Share Posted March 20, 2016 It does a forced reset to >6000 at startup. We use two chips to set up the banking: a 74LS02 forces the reset and a 74LS174 performs the banking. The resulting cartridge will work from 64K to 512K images and only has one jumper. It uses the non-inverted 378-style images. 2 Quote Link to comment Share on other sites More sharing options...
Asmusr Posted March 20, 2016 Share Posted March 20, 2016 It does a forced reset to >6000 at startup. We use two chips to set up the banking: a 74LS02 forces the reset and a 74LS174 performs the banking. The resulting cartridge will work from 64K to 512K images and only has one jumper. It uses the non-inverted 378-style images. Perhaps I'm missing something obvious, but how do you detect a soft reset? Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted March 20, 2016 Share Posted March 20, 2016 It does a forced reset to >6000 at startup. We use two chips to set up the banking: a 74LS02 forces the reset and a 74LS174 performs the banking. The resulting cartridge will work from 64K to 512K images and only has one jumper. It uses the non-inverted 378-style images. Are you going to stick with the 49F040? Quote Link to comment Share on other sites More sharing options...
marc.hull Posted March 20, 2016 Author Share Posted March 20, 2016 Perhaps I'm missing something obvious, but how do you detect a soft reset? The reset is controlled by the gs signal. It is wired straight to the mr pin of the latch. When the console does it's initial scan it resets the output pins to low. I originally used cruclk but found out that cruclk does not exist on all console. Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted March 21, 2016 Share Posted March 21, 2016 This one is set up as an EPROM cart (28-32 pin), not as a PLCC flash chip cartridge. It would replace Red boards for some uses (not all, as the Red boards will also do smaller ROM chips (down to 8K) and can be jumpered to use a static RAM chip (with a write-protect function once loaded, which makes it very usable with NV SRAM chips). Quote Link to comment Share on other sites More sharing options...
+acadiel Posted March 21, 2016 Share Posted March 21, 2016 It does a forced reset to >6000 at startup. We use two chips to set up the banking: a 74LS02 forces the reset and a 74LS174 performs the banking. The resulting cartridge will work from 64K to 512K images and only has one jumper. It uses the non-inverted 378-style images. That's actually pretty cool. One of the problems we've always had is finding these TTL chips that do what we need. This one appears to have been there all along, but we've always been concentrating on the 377/378/379 series. Nice job, Marc and Jim! So, from reading the data sheet, the 74LS174 is a hex (512K) flip flop, and it has a cool "master reset" to clear all flip flops. So, you're having the 74LS02 trigger that MR pin (pin #1) upon the console powering up? What do you have triggering the 74LS02? Man, my head is getting dizzy from all the cool things popping up in the past two weeks. Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted March 21, 2016 Share Posted March 21, 2016 We're using GS (pin 21) to trigger the reset on startup. Interestingly enough, our delvings also discovered that the CRUCLK that is supposed to be on pin 4 of the cartridge port isn't actually connected to anything on the TI's motherboard, at least on the three we cracked open to verify. . .of course, we discovered that after we tried to use it. Every port pinout I've ever seen shows it as present on pin 4--but it wasn't, which sent us on an interesting troubleshooting wild goose chase. The lesson we learned from that one is to consider that pin to be N/C if you want something to be compatible with every /4A out there (and to verify the presence of any signal you haven't used before, even if the diagrams say it's there). I suspect it may have been connected in earlier board revisions (or even just in the /4), but I haven't gone digging into it that deeply yet, as knowing that the signal wasn't present on some machines was enough to make us shy away from using it for any purpose whatsoever at the cartridge port. This way, the board will work with all motherboard revisions identically (as GS is present on all of them). 2 Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted March 21, 2016 Share Posted March 21, 2016 Perhaps I'm missing something obvious, but how do you detect a soft reset? Yeah, I'm wondering too. Quote Link to comment Share on other sites More sharing options...
Asmusr Posted March 21, 2016 Share Posted March 21, 2016 So any attempt at GROM access will reset the bank (that's clever)? 1 Quote Link to comment Share on other sites More sharing options...
+acadiel Posted March 21, 2016 Share Posted March 21, 2016 Yeah, I'm wondering too. I'm wondering if that GS resets on a soft reset as well. Quote Link to comment Share on other sites More sharing options...
marc.hull Posted March 21, 2016 Author Share Posted March 21, 2016 When the console scans the groms after any reset the gs line is brought low which resets the latch. Same thing worked for cruclk but that obviously doesn't work on all consoles. Quote Link to comment Share on other sites More sharing options...
marc.hull Posted March 22, 2016 Author Share Posted March 22, 2016 To clarify... -GS is wired to the -MR of the latch directly. So whenever the console does it's initial scans it resets the latch simply by searching for GROM. The latch has a rising edge trigger that is toggled by the NORing of -ROMS and -WE. The pin addressing is the same as the non inverted cart (per Jim) to respect the established system. The -CRUCLK was the first choice for the reset mechanism but found out into the second cart iteration that this signal does not exist at the cart port of QI consoles. 2 Quote Link to comment Share on other sites More sharing options...
+acadiel Posted March 22, 2016 Share Posted March 22, 2016 Dude, thanks for solving a long standing issue Sent from my Nexus 5X using Tapatalk Quote Link to comment Share on other sites More sharing options...
Asmusr Posted March 22, 2016 Share Posted March 22, 2016 It's still not clear to me when exactly the bank is reset. If you access the console GROMs from a cart, will that reset the bank? What is "the latch"? 1 Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted March 22, 2016 Share Posted March 22, 2016 The latch is the reset pin on the 174. It should only reset with a GROM call from a program, a warm boot, or a cold boot. As the programs running from cartridge space in an EPROM generally aren't making GROM calls, there shouldn't be issues (though if there was a GROM call from a cartridge program, it would force the 174 to reset. . . Quote Link to comment Share on other sites More sharing options...
Asmusr Posted March 22, 2016 Share Posted March 22, 2016 The latch is the reset pin on the 174. It should only reset with a GROM call from a program, a warm boot, or a cold boot. As the programs running from cartridge space in an EPROM generally aren't making GROM calls, there shouldn't be issues (though if there was a GROM call from a cartridge program, it would force the 174 to reset. . . Thanks for the clarification. Not being able to call GROM routines is cool with me - I don't think I have even tried to call a ROM routine. Quote Link to comment Share on other sites More sharing options...
marc.hull Posted March 22, 2016 Author Share Posted March 22, 2016 It's still not clear to me when exactly the bank is reset. If you access the console GROMs from a cart, will that reset the bank? What is "the latch"? Anytime a GROM acces is made then the latch (or group of six flip flops) is set to zero therby activating bank zero. Progression through the banks is done the same as the other cards. Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted March 22, 2016 Share Posted March 22, 2016 The latch is the reset pin on the 174. It should only reset with a GROM call from a program, a warm boot, or a cold boot. As the programs running from cartridge space in an EPROM generally aren't making GROM calls, there shouldn't be issues (though if there was a GROM call from a cartridge program, it would force the 174 to reset. . . Not that I have plans to modify fbForth 2.0 so that it can be easily shoehorned into a multi-cart ROM (I have thought about it), this would definitely be a problem for fbForth 2.0 because of its GPLLNK , DSRLNK , BEEP and HONK words (there may be others). They all run routines in console GROMs. ...lee Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted March 23, 2016 Share Posted March 23, 2016 Right--for fbForth you are definitely better off with a Black board--and that will give you room to expand up to 128K if you really needed to. . . Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted March 23, 2016 Share Posted March 23, 2016 I don’t suppose it’s of particular concern, but cassette I/O would be off limits, as well, since access to the cassette routines goes through a GPL DSR. ...lee Quote Link to comment Share on other sites More sharing options...
Tursi Posted March 23, 2016 Share Posted March 23, 2016 Did you test software that uses KSCAN? I thought that used GROM tables for the keyboard lookup. Quote Link to comment Share on other sites More sharing options...
Willsy Posted March 23, 2016 Share Posted March 23, 2016 Some carts (like TurboForth and fbForth) use gpl routines for loading character sets and the like. Still, we have the existing cart systems for those so I don't think it's a major issue. Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted March 23, 2016 Share Posted March 23, 2016 (edited) Some carts (like TurboForth and fbForth) use gpl routines for loading character sets and the like. Still, we have the existing cart systems for those so I don't think it's a major issue. Anyway, for future projects, and the ability to take binaries/images and make Forth etc. coexists in the more easy to update cartridges, - then the ability to make a better start-up (topic of thread) should maybe be something you can turn off. Or maybe even off as default, and something you turn on (and off) in software (like writing to >7FFC and >7FFE) ? Edited March 23, 2016 by sometimes99er 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.