The NUM exploit is a bit more involved, but is basically an accidentally discovered method of /RESET-glitching the 68705 to enter NUM (Non-User Mode, a sort of debug mode meant for evaluation boards) even if the P5-only "SNM" security bit is set. (cont/d)
-
-
https://seanriddle.com/mc68705p5.html explains the gist of using non-user mode on the MC68705P3/P5: tie Port C bit 0 to 7.5VDC through a resistor to enable NUM, and tie the 8 lines of Port A to VCC and GND through resistors such that they are being pulled to the "NOP" opcode, 0x9D. (cont'd)
1 vastaus 0 uudelleentwiittausta 0 tykkäystä -
The /RESET glitching to make the chip enter NUM even if the protection bit is set is very simple: Tie the /RESET pin high with a resistor. That's it. If you never actually assert /RESET low after power-up the chip gets very confused internally, and enters a glitchy... (cont'd)
1 vastaus 0 uudelleentwiittausta 0 tykkäystä -
variant of NUM where it pretty much just sequentially spams the contents of the internal EPROM out port B on every 2nd or 4th clock, and alternating with those clocks spits the current address out port B and port C bits 1, 2 and 3 in a somewhat weird bit ordering. (cont'd)
1 vastaus 0 uudelleentwiittausta 0 tykkäystä -
Note that if the SNM bit is NOT set on a P5 part and you try to use the glitched-NUM mode, the chip will sometimes only dump the data from 0x59D-0x7FF and then quickly jump back to 0x59D (this has to do with 0x9d being wired to port A). In this case, you need (cont'd)
1 vastaus 0 uudelleentwiittausta 0 tykkäystä -
to use the more complex method that device programmers like the BPMMicro BP-1200/BP-1400/BP-1410/BP-1600/BP-1610/etc use to dump/verify the internal EPROM, which involves manipulating port A in NUM to place a small program into the RAM of the device, and jump to that. (cont'd)
1 vastaus 0 uudelleentwiittausta 0 tykkäystä -
That small program then dumps the contents of the EPROM out of port B.
1 vastaus 0 uudelleentwiittausta 1 tykkäys -
Vastauksena käyttäjille @Lord_Nightmare ja @Neko_Ed
Thank you so much, this is a huge help! I just got up, I'll have to go over it again once my brain is running, but it looks like we can do the NUM attack with stuff we have on hand so that's fantastic. (cont'd)
1 vastaus 0 uudelleentwiittausta 1 tykkäys -
We picked up a very obscure Apple II clone, and found a P3S in its external keyboard. So we're looking to preserve its firmware in case anyone else ever needs it. Other than our own site, is there anywhere you'd suggest we post it once we have it?
1 vastaus 0 uudelleentwiittausta 1 tykkäys -
Vastauksena käyttäjille @RocketButler ja @Lord_Nightmare
So, having re-read that, your link, and the email that
@TheMogMiner was kind enough to dig up, this is what I'm thinking for reading this thing with an arduino and parts we have on hand (no logic analyzer). You owe me nothing of course, but if you don't mind looking, how's this?pic.twitter.com/qY9cbDaJBV
1 vastaus 0 uudelleentwiittausta 2 tykkäystä
I'll admit I'm not the first person to be going to for either Arduino advice (it's been 9 years) or 68x05 advice (it's been never), but this looks good to me. I'll wait for @Lord_Nightmare to weigh in though.
-
-
Vastauksena käyttäjille @TheMogMiner ja @RocketButler
I don't think an arduino will be fast enough to read once every 1mhz clock from the PortB bus. A Saleae logic analyzer (or a clone) however should be fast enough.
1 vastaus 0 uudelleentwiittausta 1 tykkäys -
Vastauksena käyttäjille @Lord_Nightmare ja @TheMogMiner
We've got a variety of actual chips around, can use a 48MHz cortex M0 if we need to -- think that'd do the job? Would I need to read on every level change of the 1mhz clock, or just every cycle?
2 vastausta 0 uudelleentwiittausta 0 tykkäystä - Näytä vastaukset
Uusi keskustelu -
Lataaminen näyttää kestävän hetken.
Twitter saattaa olla ruuhkautunut tai ongelma on muuten hetkellinen. Yritä uudelleen tai käy Twitterin tilasivulla saadaksesi lisätietoja.