Thanks for the info Brian, I really appreciate it. My plan is just to pop the ROM out when I need to reprogram it. I'm actually more comfortable unscrewing the back from the system than popping out the option ROM cover anyway, since the brass inserts are probably more robust that the tight plastic snap on the back panel. It freaks me out every time I pop that thing open :P
A few Qs: 1. It seems like pin 27 (/CS) on the system ROM is normally pulled low by a CPU read. /CS on the EEPROM should be fine if I just jumper /CS_IC to /CS_BUS and skip the R2 pullup, right? I'll obviously still use the R1 pullup for /WE on the EEPROM. I was considering using a DIP switch as a jumper for /WE to ALE instead of a jumper if it fits in the case. That way I don't have to dig around for a jumper every time I want to program the EEPROM. 2. More of a technical question about the m100 architecture: I'm curious if you know how ALE is normally being used by the CPU/system ROM? It looks like it's being used by M1 and M25 as well. I haven't encountered an address latch before, coming from mostly 6502 and Z80, and I'm interested to understand its purpose. Thanks again! On Sun, Nov 12, 2023 at 10:05:44PM -0500, Brian K. White wrote: > REX# does not provide any software main rom feature, only REX Classic does. > > You can use a FlexROM as just an ordinary re-writable rom to replace the > stock one, but you would need to open up the machine to re-write the eeprom > (or flash, there is also a flash version). You just install a jumper on the > /CS pins which has the effect of just connecting the /cs pin from the bus > directly to the /cs pin on the eeprom like normal. > > To get a software main rom, you need a REX Classic. > > You write a normal main rom to the chip and install it like normal, but you > connect two wires to the /CS pins instead of a jumper. Run the two wires out > to the option rom compartment, just fish them both through one of the little > holes where the compartment door tabs go. Keep track of which wire is the > /CS_OUT one. Label it REX TP1 on the end in the compartment. That is the one > that connects to the bus, and that is the one that needs to be connected to > the TP1 pin on the REX, but don't connect it initially. Leave the other wire > disconnected. Don't put it on the TP2 pin. > > Close up the machine. You don't need to go inside again. > > Initially, connect the two wires to each other in the option rom > compartment. IE with a short male-male dupont wire, or just any plain solid > wire that has a thick enough guage to stick in the female dupont wire ends. > This causes the machine to boot from the main rom on the flexrom inside the > machine. > > Boot the machine and activate the REX by the usual CALL 63012 > > Find the y2k T102 main rom image from the flexrom wiki page, and like > described there, make 2 copies of the Y2K fixed T102 main rom image, and hex > edit them to change the text displayed in the copyright banner in BASIC, > just so that later you have a way to see which rom you are actually running. > > In REXMGR, hit tab until you get to the SYS screen, and load the priimary > and secondary main rom images via TPDD the same as loading option rom images > or ram backup images. > > Now shut the machine off and connect the /CS_OUT wire to the REX TP1. > Leave the other wire disconnected. Don't put it on the TP2 pin. > > Now boot the machine and go into BASIC and see the altered banner. > > Going forward, you can keep reloading hacked versions of main rom images > into either the primary or secondary slots, or both, since the flexrom wire > ends up acting as a 3rd ultimate fallback so you can always boot even if you > totally screw up both primary and secondary slots. You Can't break the > internal main rom no matter what you do with the rex. The only way to edit > the internal main rom is to open the machine back up and connect it to a > programmer. > > It's actually super convenient once it's set up. REX makes it a breeze to > load the images, and having 2 slots means you can keep one slot sacrosanct > and only hack on the other slot, so you can recover from borked hacks > without even having to open the option rom compartment and switch the wires. > > Without a REX Classic, you can still re-write the rom, but only by > connecting it to a programmer, so it needs the machine to be opened up. > > The pics show using a SOIC test clip, but there is also a programming > adapter pcb you can make instead. > https://github.com/bkw777/aDIPters#flexrom_100 > https://github.com/bkw777/aDIPters#flexrom_100-programming-adapter > > Or for the flash version, because the 28C256 eeprom is getting ridiculous > expensive these days.: > https://github.com/bkw777/aDIPters#flashrom_100 > https://github.com/bkw777/aDIPters#flashrom_100-programming-adapter > > > -- > bkw > > On 11/12/23 17:07, runrin wrote: > > Hi all, > > > > I've got a REX# in my m100 and was wondering if it was compatible with > > the FlexROM, which I see uses some jumper cables to interface with the > > original REX. The REX# doesn't seem to have the pins to connect those > > jumpers. > > > > My priority is changing the keymap for the m100 since I don't use > > QWERTY, but being able to hack the ROM right from the machine with the > > REX seems like a nice feature. I will likely order a FlexROM board > > anyway, since it seems like the best option to swap my LH535618 system > > rom. > > > > Has anyone had any success getting the FlexROM working with the REX#? > > Any tips would be appreciated. I don't mind hacking the REX# with bodge > > wires if that's what I have to do. > > > > If anyone has other suggestions for the best way to swap the rom, it's > > unlikely I will be doing it regularly once I have my keymap working the > > way I want, so I'd be open for suggestions there too. > > > > Thanks! > > -- > bkw >
