glurk Posted July 28, 2021 Author Share Posted July 28, 2021 (edited) Ok, I've spent a little time on this already, and I now have an ASM file that assembles back into the exact binary. Used f9dasm disassembler, and it's companion A09 assembler. Really easy. Now just have to add the comments back in, I guess. out.asm Edited July 28, 2021 by glurk mispelling Quote Link to comment Share on other sites More sharing options...
DavidMil Posted July 28, 2021 Share Posted July 28, 2021 On 5/4/2021 at 11:52 PM, glurk said: I just fully checked out my old drive, it's an RFD44-S1. Everything is A-OK, voltages, caps, regulators, etc. I remounted the regs and added heat sinks on the back. It's all good. The one thing I worry about is the ROM. I think someone here archives these, correct? I would REALLY like to have a backup (or two) of this, but I can neither read it nor burn a new one due to lack of hardware. Ever seen this? DavidMil Percom Primer from Atari Classics 03-95.pdf Quote Link to comment Share on other sites More sharing options...
DavidMil Posted July 28, 2021 Share Posted July 28, 2021 glurk, phaeron, My hat is off to both of you for a lot of work and a job well done! DavidMil Quote Link to comment Share on other sites More sharing options...
glurk Posted July 28, 2021 Author Share Posted July 28, 2021 That Percom Primer is where I first read about the issue with the mounting of the voltage regulators. I would have never thought about that, otherwise. And mine WERE mounted wrongly. However, I do think some of the info in there is wrong... Sigh. Meanwhile, I REALLY like this f9dasm/A09 combo. Using the author's pre-built A09 binary under Win7, I can just drag-and-drop the ASM file on it, and it spits out a 2K binary that binary compares exactly against the original ROM. And it was really not too much work. Now, moving all of phaeron's comments over is a bit of work, LOL. But I'm motivated. Even if no one else does, I think it's just a great idea to have the ASM code that will compile back into a working Percom firmware. And I really doubt, at this late stage, that any better ROM is going to show up! Even if one somehow does, the changes can be easily added back in. And I now have a foolproof ROM backup method. So I'm happy. Also, with Phaeron's great emulator, it's possible to change the ROM, load it into Altirra, and test it right there! Quote Link to comment Share on other sites More sharing options...
moonlight_mile Posted July 28, 2021 Share Posted July 28, 2021 That is great. I have the Percom primer. Funny thing. The RFD40 I got from the UK came with it all printed and in a nice sheet saver. I’ve always though the case was a pretty good heat sink for those regulators but I guess not. Has anyone tried installing true heat sinks on the voltage regulators? Quote Link to comment Share on other sites More sharing options...
glurk Posted July 28, 2021 Author Share Posted July 28, 2021 It's not that the back is a poor heat sink, it's that Percom put the insulators BETWEEN the regulators and the case. I did put heat sinks on mine, on the back of the case. It's in the photos in the very first post I made at the start of this thread. Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted July 28, 2021 Share Posted July 28, 2021 (edited) it's not so much the insulator doesn't belong there as much as it is that the heat sink grease isn't applied on both sides of the insulator as it should be... the other stupid move was putting the regulators in sockets... this is a really bad idea that screws with bias and leads to issues over time as oxidation sets in... higher current draw items should be soldered or clamped and never placed in sockets of this type. The insulators are still used today for protection against failures in a way that the grounded heat sink tab becomes exposed to a positive charge, either through a failure of components to the case, a direct contact of live power to the case... or in a rare instance of a failure of the regulator such that it makes the heat sink tab live with positive voltage/current. The alchemist is wise but did not see those particular demons lurking in the mist (magical smoke) Edited July 28, 2021 by _The Doctor__ 1 Quote Link to comment Share on other sites More sharing options...
+kheller2 Posted July 28, 2021 Share Posted July 28, 2021 Slightly off topic, but doesn’t the 1050 also have one of its regulators isolated from the heat sink for electrical purposes? Quote Link to comment Share on other sites More sharing options...
BillC Posted July 28, 2021 Share Posted July 28, 2021 2 hours ago, _The Doctor__ said: .. the other stupid move was putting the regulators in sockets... I have a Percom AT88-S1 which has the voltage regulators soldered to the PCB next to the SIO ports. I believe adding sockets for the regulators was to overcome the issue with legs breaking off due to accumulated stress when plugging/unplugging SIO cables, the PCB moves a little but the voltage regulator can't because it is screwed to the back of the case which acts as the heatsink, the sockets allowed some movement which reduced/removed this stress. Quote Link to comment Share on other sites More sharing options...
DavidMil Posted July 30, 2021 Share Posted July 30, 2021 On 7/28/2021 at 9:14 AM, kheller2 said: Slightly off topic, but doesn’t the 1050 also have one of its regulators isolated from the heat sink for electrical purposes? It most certainly does! I bought a 1050 on Ebay that had the isolation removed and it drove me crazy for a while till I noticed the heat build up around the TIP110 (Q6). DavidMil 1 Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted July 30, 2021 Share Posted July 30, 2021 On 7/28/2021 at 12:51 PM, BillC said: I have a Percom AT88-S1 which has the voltage regulators soldered to the PCB next to the SIO ports. I believe adding sockets for the regulators was to overcome the issue with legs breaking off due to accumulated stress when plugging/unplugging SIO cables, the PCB moves a little but the voltage regulator can't because it is screwed to the back of the case which acts as the heatsink, the sockets allowed some movement which reduced/removed this stress. heh soldered copper braid across them... they flex and carry the current without drop, loss or breakage ... never a problem Quote Link to comment Share on other sites More sharing options...
DavidMil Posted July 30, 2021 Share Posted July 30, 2021 Looking through my Percom stuff, I found a EPROM with a Version level of AT88 V1.3, and a 16 pin AM27S19DC that was stamped in white ink with the word PECOM-1 that is on a daughter board attached to the AT88 board. The daughter board fits into the U6 socket. DavidMil Quote Link to comment Share on other sites More sharing options...
glurk Posted August 1, 2021 Author Share Posted August 1, 2021 OK, this was a lot of work, I spent several days on it. What I have is the ROM disassembly for the Percom RFD's Version 2.1 that DavidMil supplied, and pharon commented. What I've done is add labels, and structure to the code so that it's fairly easy to read (if you can read 6809 assembly) which I've kind of learned to do now... And... It's fully assemble-ble with the A09 6809 assembler: https://www.hermannseib.com/english/opensource.htm, and it assembles right back into the same exact 2K ROM. But this time, it can be modified and re-assembled. However, it's a really FULL 2K ROM, so it would be challenging to add much. It would be EASY to change the sector interleaves, or the motor timeout, or other things like that. One thing I'm looking at is the annoying fact that Percom's "motor-ons" every attached drive when one of them is selected. And it MIGHT be possible to add a new SIO command. The code can be shortened/optimized to get some more free bytes, by changing long branches to short ones as phareron noted. I've done that, and a few other things in a "custom" version I was playing around with, but only saved about 28 bytes, lol! It's pretty well coded from what I can tell. If it were a 4K ROM, I guess all sorts of things could be done... Anyways, I hope someone finds this useful. It suits my hacker mentality to be able to build a custom firmware for the drive I own. 50K full assembly code below: Percom-RFD-21.asm Quote Link to comment Share on other sites More sharing options...
Mathy Posted August 1, 2021 Share Posted August 1, 2021 Hello guys Stupid question from somebody who knows nothing about these Person drives: Could a bigger ROM be used completely? Sincerely Mathy Quote Link to comment Share on other sites More sharing options...
glurk Posted September 21, 2021 Author Share Posted September 21, 2021 Replying to old thread, but got an EPROM burner today and read the ROM from my RFD44-S1. It's RFDV1.1, and it's the exact same CRC32 and everything as the known ones. So, basically I'm reporting nothing new. But now I can change the formatting bytes to 00, or hack on it, or anything. So that's cool. 1 Quote Link to comment Share on other sites More sharing options...
DavidMil Posted September 22, 2021 Share Posted September 22, 2021 While I was rummaging around I found a manual for AT88 drives for Atari Computers. It's in very bad condition because It's been in the attic for at least 30 years. The pages are so brittle that they crack apart if not handled carefully. I'm going to need someone to carefully copy this manual. I'm going to check locally to see if I can get a decent price to make a couple of copies and maybe a pdf file too. Here are a couple of pics. DavidMil 4 Quote Link to comment Share on other sites More sharing options...
glurk Posted September 28, 2021 Author Share Posted September 28, 2021 Ok, today I bought/received a new (well, to me) Percom drive, an AT88-S1PD. It came with a Tandon half-height drive, which is broken, but I think I can fix it. It (the drive mech) had a shorted-out capacitor on the motor control board. I'm posting because this Percom has a 1.01 firmware, unseen before, I think. I have an EPROM burner now, so I pulled it and dumped it. I also took a photo of the controller board: And the ROM dump: at88s1pd101.bin This one has never before been dumped/posted, as far as I know. 1 Quote Link to comment Share on other sites More sharing options...
phaeron Posted September 28, 2021 Share Posted September 28, 2021 1 hour ago, glurk said: I'm posting because this Percom has a 1.01 firmware, unseen before, I think. I have an EPROM burner now, so I pulled it and dumped it. I also took a photo of the controller board: at88s1pd101.bin 4 kB · 3 downloads This one has never before been dumped/posted, as far as I know. It looks like the only difference in the drive portion between this v1.01 and v1.11 is step rate -- this has a faster default step rate (0) than v1.11 (1). There is a bit more on the printer side, looks like v1.11 added logic to force-print a space on an empty line and increase some delays. Quote Link to comment Share on other sites More sharing options...
cx2k Posted September 28, 2021 Share Posted September 28, 2021 Picked up a couple of Percoms recently and just dumped the roms. One was a Single Percom and the other was a Dual Percom. Here's pics of the chips and dumps in case anyone wants to dissect or check for differences. Percom Single Drive AT-88 Ver 1.10.BIN Percom Dual Drive 0065.BIN 1 Quote Link to comment Share on other sites More sharing options...
+MrFish Posted September 28, 2021 Share Posted September 28, 2021 17 minutes ago, cx2k said: Picked up a couple of Percoms recently and just dumped the roms. One was a Single Percom and the other was a Dual Percom. Here's pics of the chips and dumps in case anyone wants to dissect or check for differences. Thanks for posting. The ROM from the dual machine matches 2 other dumps from RFD drives that have been dumped already. The AT-88 v1.10 ROM, I don't seem to have any previous dump matching that. 1 Quote Link to comment Share on other sites More sharing options...
glurk Posted September 28, 2021 Author Share Posted September 28, 2021 MrFish- Do you have these Percom ROMs organized and downloadable from somewhere? I know they are scattered all over in posts on this board, and probably on other sites. I personally want to get the "newest" ROM for my AT88-S1PD drive, which I just fixed. The one with 1.01 f/w I posted above. This would be a great resource, and at least of help to everyone who owns these drives! 1 Quote Link to comment Share on other sites More sharing options...
+MrFish Posted September 28, 2021 Share Posted September 28, 2021 (edited) 31 minutes ago, glurk said: MrFish- Do you have these Percom ROMs organized and downloadable from somewhere? I know they are scattered all over in posts on this board, and probably on other sites. I personally want to get the "newest" ROM for my AT88-S1PD drive, which I just fixed. The one with 1.01 f/w I posted above. This would be a great resource, and at least of help to everyone who owns these drives! I have them (and ROM's for many other devices) fairly well organized at this point. I still want to standardize what information is in the file names, what order it appears, and what format it's in (with braces, parenthesis, etc.). The purpose for me getting all these together is for a website I'm working on, which isn't too far from being ready to launch. It's completely devoted to hardware (and some related materials). So, I plan to have all these ROM's neatly situated on pages and sections for the hardware they belong to. In the mean time, here's the most recent AT88-S1PD ROM I have (v1.21). The checksum is the bracketed number in the filename. It was dumped/posted by @JR> Percom AT88-S1PD (DD 1795-PL) (1.21) (5-4-84 0073) [FC6675F2] - JR.rom Edited September 28, 2021 by MrFish Quote Link to comment Share on other sites More sharing options...
phaeron Posted September 29, 2021 Share Posted September 29, 2021 (edited) Annotated disassembly of AT-88 V1.10 attached. Turns out it is almost exactly the same as a previous dump (https://atariage.com/forums/topic/304384-percom-at-88-doubler-rom/?do=findComment&comment=4500754), with one small exception. In V1.10, there is a bogus PULS X instruction that causes the firmware to crash if the sector number to a Write Sector or Put Sector command is invalid (0 or >720). In the linked version, this was hotfixed with two NOPs in-place. That means we have three known AT-88 dumps: [942606D1] V1.10 12-8-82 (above), related to RFD 1.10 [404EFBE1] unknown version with write/put hotfix (V1.11?) [2372FAE6] V1.20, related to RFD 1.20 The strange thing is that this is in a code fragment that sets the invalid data frame status bit (bit 1), which seems bogus; no version of the RFD firmware does this, instead just jumping directly to the NAK handler, but all versions of AT-88 at AT88-S1PD/SPD do. Not aware of any other drives that do this. For completeness, known RFD versions (2K firmware): [5A396459] V1.00 [E2D4A05C] V1.10 (8-28-82 and 11-8-82): deleted sector fix [2AB65122] Astra 1001/1620; modified V1.10 with different step rate [C6C73D23] V1.20: double-sided fixes [AC141045] V2.10: many disk fixes ..and AT88-S1PD/SPD versions (4K firmware): Pre-V1.11 with incomplete listing only [87A0D7E7] V1.11 (1-9-84): step rate changed + printer fixes [FC6675F2] V1.21 (5-4-84): more printer fixes [575C9833] Unknown version >1.21: disk fixes in common with RFD V2.10 percom-at88-1.10.s Edited June 16, 2023 by tep392 I took the liberty of fixing the check sum typo's for AT88-S1PD V1.11 and V1.21 3 Quote Link to comment Share on other sites More sharing options...
+MrFish Posted September 29, 2021 Share Posted September 29, 2021 (edited) 1 hour ago, phaeron said: [404EFBE1] V1.11 (1-9-84): step rate changed + printer fixes I have a checksum of 87A0D7E7 for this one. 1 hour ago, phaeron said: [2372FAE6] V1.21 (5-4-84): more printer fixes This should match the one I just posted above, with a checksum of FC6675F2. 1 hour ago, phaeron said: [575C9833] Unknown version >1.21: disk fixes in common with RFD V2.10 For this checksum, I have it listed as v1.3 (?) - as it was supposed at the time it was dumped. It's been determined to be v1.21 now? Edited September 29, 2021 by MrFish Quote Link to comment Share on other sites More sharing options...
phaeron Posted September 29, 2021 Share Posted September 29, 2021 12 hours ago, MrFish said: I have a checksum of 87A0D7E7 for this one. This should match the one I just posted above, with a checksum of FC6675F2. Sorry, yeah, you're correct on those two. I miscopied the CRCs. 12 hours ago, MrFish said: For this checksum, I have it listed as v1.3 (?) - as it was supposed at the time it was dumped. It's been determined to be v1.21 now? >1.21 means newer than v1.21, since that version of the firmware has bug fixes beyond the one that is known to be v1.21 by the sticker on the ROM. However, this particular once I don't think we have a version for -- the source remembers there was a v1.3 and v1.4, but we don't have indication that this ROM version is either of those: https://atariage.com/forums/topic/304384-percom-at-88-doubler-rom/?do=findComment&comment=4502153 It also doesn't appear that the S1PD/SPD firmwares tracked the version numbers of the RFD/AT88 firmwares, whereas the RFD and AT88 firmware versions do track closely. 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.