https://martypc.blogspot.com/2024/09/pc-floppy-copy-protection-electronic.html
Before Electronic Arts (EA) was the publishing juggernaut that it is today, it was just one of dozens of software publishers putting out titles for various home computers, including the IBM PC. EA was founded in 1982 by Trip Hawkins, who would go on to create the ultimately unsuccessful 3DO game console. In the mid-1980's, EA was perhaps most famous for their paint program, Deluxe Paint, which became a popular graphics tool for the whole computer gaming industry.
Unlike the companies we have covered to date, EA is mostly widely known for their games, not their copy protection schemes. EA is famous enough that a long segue into their corporate history isn't really necessary - you can just read the Wikipedia entry.
EA wasn't selling their copy protection technology, so there are no flashy advertisements extolling its virtues or many articles discussing it at all. All that is left to talk about is the protection itself.
(Score: 4, Interesting) by bzipitidoo on Thursday September 26, @12:55PM (7 children)
I never had any 1980s EA stuff for the PC, but the idea of having extra sectors on a track could also be one thing they did to copy protect an Apple II disk. When an EA game loaded, there was a moment when the floppy drive made a unique shuffling noise as if the arm was being rapidly shifted back and forth between 2 or 3 tracks. I suspect the tracks had been carefully aligned with one another, something that a copy utility such as Nibbles Away, which I guess treated tracks independently, would certainly fail to duplicate. Apple II floppy disk control was extremely low level, scope for all kinds of tricks for copy protection. The only requirement for it to work was that sector 0 of track 0 had to be standard, as the code to read that was part of the floppy disk ROM. After that sector is read, that's 256 bytes of assembler in RAM that in standard Apple DOS reads the rest of track 0 (very much a bootstrap process, as the instructions read from the rest of track 0 contain the code to move the floppy disk arm to other tracks, which is immediately used to load the rest of DOS from tracks 1 and 2), but which a copy protection scheme can begin to do something else.
(Score: 3, Interesting) by Rich on Thursday September 26, @03:58PM (6 children)
The first EA title on the Apple II was "Axis Assassin", a "Tempest" arcade clone. IIRC that was the first title to use quarter tracks.
The Disk II exposes its four head stepper phases directly to the CPU (typically at $C0E0..7) and is operated with "wave drive", meaning there's one phase on when stepping and the head steers toward that phase. Each wave step amounts to one half-track (two wave steps are one full track). However, steppers can also be operated with "full-step drive", with two phases on. This yields more power, and as one would assume, the rotor then steers towards the gap between the phases. (The last "conventional" step technique is half-stepping, where wave and full steps alternate, and beyond that, there's "microstepping").
For the Disk II mechanism this means that if two adjacent phases are on, the head will come to rest between the half-tracks corresponding to the individual phases. Hence, quarter tracks.
If I had much too much time on my hands, I'd do a Disk II Analog Board replacement that can do microstepping (for adjustment and data rescue purposes) and advanced digital decoding...
Don't overdo the multiple phases thing, it was one of the great adventures of my youth to swap the ULN2003 that drives the phase coils on that super expensive (Apple markup plus low-value purchase currency) disk drive. I succeeded, though.
One of the next EA titles was "One on One", some silly basketball game. When cracked badly, the two guys on the screen would rotate their heads and refuse to play. That's one of the things I wasn't able to figure out why, but pressure to do so was limited, because one could just "Snapshot" the whole game (loading the software of the "Snapshot" cracking card into a language card with an added hardware switch and hitting NMI).
(Score: 4, Interesting) by bzipitidoo on Friday September 27, @01:30AM (5 children)
I broke the copy protection of the Apple II version of Ultima 4, Moebius, and the other Origin games that used that protection. That done, I was able to make a significant improvement to Moebius, and play around with elements of Ultima 4. Changed the graphics for the fun of it. In Moebius, when you got into a fight, the game would load some sort of battlefield and, I suspect, the programming to run a battle. On the stock versions, this took about 20 seconds because Origin didn't trouble to optimize the disk access. By doing so, I knocked that load time down to 5 seconds.
Yes, I knew of quarter stepping, and one thing I always wondered was whether more data could be reliably stored by writing every 3 quarters, instead of every 4. Half tracking did not work because there was too much bleed-- writing to a half track would overwrite the adjacent tracks, but I wondered if 3/4 would. Never did write any code to try that.
One game that either had deep copy protection or a bug was Earth Orbit Station. The 1st phase of the game can be played fine, and that could take a couple of hours. Then the next phase would not load. I supposed it was a copy protection scheme, and learned more things about the Apple trying to figure it out. What EOS does is throw an illegal opcode at the CPU. When that happens, the computer does a reset. The CPU does an indirect jump using the last 2 bytes of the 64k memory space as the address to jump to. Usually those bytes are in ROM and contain the address of an assembler routine to reset the computer. But, if the computer has 64k or more RAM, that ROM can be shadowed, and EOS did so in order to put its own jump points there. Just once I got it to work and was able to play some of the next phase, but I hadn't kept careful enough notes of how I did it, and couldn't replicate what I'd done. Took too much time to test a potential crack since you had to play all the way through the first phase.
If you do end up with too much time on your hands, what may be of most value now is a means to read old floppy disks, doing whatever data recovery might be possible, to copy the data to a newer system.
(Score: 2) by Freeman on Friday September 27, @01:31PM (4 children)
Definitely past time to migrate any old data you care about. The key to keeping a good backup is to keep making good backups. Even with the "Millennial Disc" kind of backup media, you're beholden to there being functional hardware to read it. Assuming it even comes close to lasting that long. https://en.wikipedia.org/wiki/M-DISC [wikipedia.org]
Joshua 1:9 "Be strong and of a good courage; be not afraid, neither be thou dismayed: for the Lord thy God is with thee"
(Score: 2) by bzipitidoo on Friday September 27, @04:26PM (3 children)
So true. I got burned on the functional hardware part. When I got rid of my last computer that had a 5.25" floppy (a Pentium II PC), I carefully saved the floppy drives. But I hadn't counted on future PCs dropping the floppy interface. In hindsight, it wasn't too bright of me to expect hardware manufacturers to hang onto cruft, and yet, the x86 and Windows are exercises in backward compatibility that cling to every crufty standard ever made.
I still have the 1st 64bit PC I got, and it came with a 3.5" floppy drive, and 5.25" sized bays. I thought I could simply plug the 5.25" floppy drive into that. Wrong! Yes, it can be plugged in, but it doesn't work. The manufacturer dropped the 5.25" spec from the hardware. That computer will not operate a 5.25" floppy drive, only a 3.5" floppy drive. I believe I have everything I want off the floppy disks, but I wouldn't mind being able to go through them again just to be extra sure.
When I went through my 3.5" floppies a couple years ago, I felt a little embarrassed about what was on them: pirated games and porn for the most part. Oh yeah, I'd forgotten about a lot of that. Somehow supposed there would be more personal things on there. There was some of that too. Attempts at game engines that were never finished, and were outstripped by advances in graphics even at the time I was working on them. I tried to do a tile style game like the first Ultimas, but with better graphics (VGA, 256 colors woohoo!), and then tours de force like Castle Wolfenstein and Doom appear, not to mention the more 3D perspective of the later Ultimas. That's the sort of thing that depresses a fellow into admitting that his stuff was lame, and quietly burying it for the next 30 years. Admittedly, it's rough for one individual to compete with big game houses that employ professional artists, story writers, musicians, and so forth, as well as programmers. I was trying to do all that stuff all by myself. Why struggle to write your own music, bound to be weak beer unless you have some incredible flair for that sort of thing, when you can just rip classical music, as so many of those early games did?
(Score: 3, Interesting) by Freeman on Friday September 27, @04:51PM (2 children)
Useful page: https://www.howtogeek.com/669331/how-to-read-a-floppy-disk-on-a-modern-pc-or-mac/ [howtogeek.com]
http://www.deviceside.com/ [deviceside.com] provides a USB interface http://shop.deviceside.com/prod/FC5025 [deviceside.com] for a 5.25" drive.
Beyond needing the 5.25" drive and requisite cables, you need external power as well.
In the event that you just need 3.5" Floppy access. There's still quite a number of 3.5" Floppy drives with USB interface available new from the likes of Amazon.
There's also the "KryoFlux", but that seems excessively expensive: https://webstore.kryoflux.com/catalog/ [kryoflux.com]
In the end it might be easier to find a computer that has functional 3.5" and 5.25" floppy drives and copy those 5.25" disks to 3.5" disks. Though, possibly an even more expensive option, depending on what you're looking for/etc.
Joshua 1:9 "Be strong and of a good courage; be not afraid, neither be thou dismayed: for the Lord thy God is with thee"
(Score: 2) by bzipitidoo on Friday September 27, @07:15PM (1 child)
I did try one of those USB 3.5" floppy drives. They work, but there's a huge gotcha with them. They only read and write the High Density (1.44M) disks, not the Double Density (720k) disks. It was when I resurrected my old 64bit PC that I remembered my thinking back then. I put the most important (to me) stuff on the 720k floppies, on the thinking that they would be more reliable over the long term because the data density is lower. That was where I found my old tile game engine and accompanying graphics.
(Score: 3, Interesting) by Rich on Saturday September 28, @01:25AM
Both microstepping and advanced decoding would help with recovery. The microstepping could align to where some maybe slightly misadjusted drive had written its tracks, aside from a quantitative analysis how much a drive is away from a reference. The advanced decoding would work like a storage oscilloscope, sampling maybe around 4 MHz (16x oversampling) - heuristics could identify glitches and make a best effort to recover it in a way that matches the sector checksum...
^- that's what I still had in my edit buffer from yesterday but didn't get to post somehow. Fast forward to today, and it becomes eerily relevant:
The customer dropped a 30 year old device at my place where I'm supposed to improve an automated testing routine for some EMC re-validation. The device gets software updates from 256K (sic. KILObytes) "Linear Flash" PC cards. I once grabbed a couple of these and figured out that some still "IBM" labeled gear can still access them in 32-bit Linux. Slightly newer gear with a "Lenovo" badge accepts them hardware wise, but there seems to be an address conflict with 64 bit Linux. Figuring out the update process is more tricky. I've got the source code of the main application and the compiler, the latter came in a box with 5.25 floppies - but fortunately I could get a copy of all that over network. However, the update process is unclear, there's an EPROM in the device which seems to hold the updater, and it seems I haven't got any source for that and no documentation on the flash card image. There are two 3.5 floppies that seem to have some stuff on them, and my hope was that they contain the EPROM source and let me look at the whole process.
Step 1: Dig out the IBM USB Floppy I had stashed away for such occasions. Floppy won't even go in, mechanically stuck. Once dismantled, it would take them, apparently the slightest pressure on the bottom causes a block. "sweep-slurp" on a Mac, no mount. Not much more after that. Linux identifies the drive as "YE Data" unit, the disks are HD, but all they do is an endless "chug chug" betweon two tracks. Well, I'm not fixing the mechanism now, so...
Step 2: PowerBook 150. Stored away in the basement next to the old modems where it was in long time use for occasional serial terminal work. That's got a SuperDrive (Apple lingo for MFM and HD), right? Plug in. Sad Mac Melody. Plus, the screen has developed "vinegar syndrome" over the last couple of years where it wasn't used. Tough shit...
Step 3: ... I went foraging through the hardware graveyard and discovered a PC with a mechanism. I suppose it should have its cable, too. The Gigabyte mobo of my main desktop PC with a Q6600 has a 34-pin connector. I'll try my luck tomorrow.
The meeting where I should present the options is on Monday morning, so ordering a 17€ USB floppy (as they are on ebay today) won't help me until then. I'll still do it, for good measure. But I might not even get lucky if the floppy content doesn't contain what I want to know. In that case, I'll probably have to pull the EPROM (I have the device stripped already...), at least it's socketed, and look at the disassembly.
Applied retro-computing fun, and, to close the circle, that's where I'd actually might need NOW, what I had in mind at the beginning of this message: a nice USB device that takes every floppy mechanism out there and has the smarts to correct all the flaws of old media.
(Score: 4, Insightful) by pkrasimirov on Thursday September 26, @02:20PM
Very interesting read, thank you for sharing. This is the primary info what Soylentnews should be about. I recommend to also read the comments under the blog about the shifting bits, treasure.