I never saw that leak mentioned anywhere. I think I still have the code. Should I share it, and how?
And a partial file listing of the source code I got: http://imgur.com/F6XVLP0
You can submit an image of the CD to the Internet Archive, exactly the kind of stuff they're collecting:
Is there a guide to the best way to rip the disc image, preferred formats for inlay scans, etc?
And do I need to do anything regarding copyright? I would definitely not want to cause any legal trouble for archive.org as it is a v valuable resource.
Not sure there's any magic involved, I did this on Linux with dd if=/dev/cdrom of=file.iso. For scans I just did the highest resolution my scanner did.
Re copyright, I wouldn't be overly worried. I mean this stuff usually contains shareware, demos and other software that was supposed to be copied. The Internet archive will probably take it down if there's a legit complain, but given that mostly "nobody cares" it should be okay.
But all the links are dead.
The only thing that can be said is that the owner may not be enforcing it anymore.
This was possible before a change in copyright law in the US in 1988 when copyright became more or less automatic. The cutoff date was January 1st 1978, which does exclude most modern video games, and people didn't much care about copyright in video games, or software generally, prior to that date.
There are a few films made relatively recently - Night of the Living Dead being a prominent example - which are public domain through oversights in the handling of the film's copyright. Whether there are actually any video games that went public domain by this route is left as an exercise for the reader...
Proving you have copyright can be another matter...
Only for pre-1978 things.
A title change from Night Of The Flesh Eaters to Night Of The Living Dead caused all kinds of problems for Romero and Russo.
That's the real issue. I'd be very surprised if much of the source code didn't still exist, but the entities owning it have been sold, bankrupted, chopped into pieces, and resold so often that it's impossible to legally release.
I suppose one difficulty is that DOS games were released before the DMCA, or before the DMCA's process was clear. And the old system wasn't so forgiving.
You just described archive.org ;)
The first, information asymmetry. The person holding the code (the lone developer with an old floppy disk stored in the attic) has no idea who the owner might be. The actual owner is well aware of what they own.
That could be resolved by a DMCA takedown notice, yes.
Alas, there's usually also financial asymmetry. And as an individual, the potential costs of a copyright lawsuit are not something you want to face. As a larger company, it's just part of your normal expenses - especially if your business model is "accumulate IP"
No, because while it may be difficult for you to determine ownership, the actual owners may be well aware of their IP.
>Throw it up on a free service somewhere and respond to DMCA takedowns in the rare event the owner shows up out of the woodwork.
The DMCA protects the free service, it doesn't protect you.
Prior to that their liability wasn't a clear legal question so there was alway lawsuit potential.
Archive.org could still end up in more trouble under the DMCA because lawyers could argue that there's a pattern of violations and it's not a neutral carrier.
A few of these games have been re-released later, and in some of those cases old engineers had to be tracked down who still had the source code laying around in their personal archives.
I imagine this is very common, considering some of the titles I've witnessed this happen to. If games will those types of budgets and followings were lost, I can't imagine the vast long-tail of the industry being any better. Plus there were far more independent studios at the time who later "made it big" only to flame out. I expect the vast majority of content created during this timeframe is permanently lost.
These days with the advance of business types understanding the long-term value of IP, I expect this is much better controlled by whomever is underwriting the cost of development. I believe this likely to be a bad thing - as you'll see more lawsuits over old games in the future.
And with some of those Sierra projects, their archival might have all the assets they could find; that doesn't mean they have all the assets.
Edit: Hmmm... You probably should neither confirm nor deny.
To me, that would be the main reason to release old source code. Though I understand the legal stuff is hairy, and people don't generally do it for that reason.
So, extra portraits and some background music? That will be 10$ please.
In the early 90's, DUX Software licensed the rights to port SimCity to Unix from Maxis. Then DUX made a contract with me to do the work. I kept a copy of my contract with DUX, the original floppies they gave me with the original PC and Mac source code, as well as versions of the source code I ported to Unix.
Years later I got a job working for Maxis on The Sims. Before we shipped it, EA bought Maxis, so a lot of people were let go, projects were canceled, physical and digital files were shuffled around, and institutional knowledge was lost.
After we shipped The Sims but just before I left EA, on a fluke, I asked a Maxis old-timer if he had any idea if the contract between Maxis and DUX for SimCity still existed, and where it might be.
As you would expect, it was in the bottom of a locked filing cabinet stuck in a disused lavatory with a sign on the door saying "Beware of the Leopard." ;(
So I waited late into the night for the leopard to fall asleep, made a photocopy of it, then returned the original to its hiding place. ;)
Several years later, John Gilmore suggested we persuade EA to relicense the SimCity source code under GPLv3, so it could be shipped with the OLPC.
Of course nobody in EA Management knew where the source code was or if it even still existed, but fortunately I still had my copy.
And of course nobody at EA Legal even knew if EA owned the rights to the changes I'd made (Maxis had gotten into some pretty terrible SimCity licensing contracts in the past).
But fortunately I'd kept a copy of the contract between myself and DUX, and the contract between DUX and Maxis, proving its provenance, which clearly stated that DUX's rights expired after 10 years, after which the rights to all the modifications I made went back to Maxis (and thus were inherited by EA).
Once all that was cleared up, the most important factor was that EA deputized someone on the inside to shepherd the project through the various stages of approval, relicensing, development and QA. Otherwise it would have died on the vine, since everybody in a big company, no matter how well intentioned, is always 500% busy doing their own stuff and can't be distracted by something that doesn't affect the bottom line.
It finally made it through both EA Legal and QA, and we released the SimCity source code and binary for the OLPC under GPLv3!
Since releasing the X11/TCL/Tk version for OLPC, we've stripped out the user interface, cleaned up and refactored and doxygenated the city simulator engine code into C++, and wrapped it with SWIG so it plugs into Python and other scripting languages. It's not as "authentic", but it has more comments and is easier to read than the old C code:
Here's a talk about it:
HAR 2009 Lightning Talk Transcript: Constructionist Educational Open Source SimCity, by Don Hopkins
I got hooked on computer games by playing Zork at MIT-DM, and it really blew my mind to finally be able to read the original Zork source code in MDL. Reading the source code takes you backstage behind the scenes of a world you visited years ago, like the Disney's Keys to the Kingdom Tour!
I see what you did there.
Can I have a hint?
I saw the movie, I think I really need to get the book...
I recorded H2G2 off the radio as a teen, and listened to it so many times I could have quoted the entire 6 hours in one shot.
I didn't mean to plagiarize -- those words are just so deeply embedded in my mind from listening to the radio shows and records, reading the books and playing the infocom game so many times, and they so perfectly described the situation. So I assumed everyone would recognize Douglas Adam's really really nice use of words, like a Shakespearian quote. ;)
"It's unpleasantly like being drunk."
"What's so unpleasant about being drunk?"
"You ask a glass of water."
If you haven't already listened to the 1978 radio show millions of times, it's on youtube!
Convergent manufactured their own line of desktop computers. Initially marketed as 'scientific', they quickly found that enterprise was where the money was. So we built a whole office suite, Document Designer, editors, print engine, a Multiplan port (pre-Excel) from a goofy guy at a company called Microsoft.
There is no way to port such a game with it feeling authentic, other than the emulator.
And that's just the playable binary. If you want to, say, port it to iOS (no CD, wrong hardware, wrong OS) you'll need the actual source code - and the point of the OP is that source code is mostly lost, either being on unreadable media, unsupported obsolete data formats, or simply lost/discarded over time.
Having dozens of game CDs from that era doesn't mean you'll have anything that can read & run them (or will in the near future).
For the past decade or so, DosBox has been a pretty much flawless option for emulation from Win/Mac/Linux: https://www.dosbox.com/information.php.
Before that Windows was pretty much able to emulate DOS environments on its own (for 80-90% of games). The great emulation options is one of the main reason, I've literally migrated my old data from hard drive to hard drive for 20 years. Some of my games were old even when I was a kid.
"Code review" http://www.fabiensanglard.net/prince_of_persia/index.php
I'm sure there was an article about it on ascii.textfiles.com but I can't find it.
We have wikileaks etc, but nothing to make it easy for digital preservation of things like this.
Perhaps for games a site like abandonia.com could setup a git server?
I bet there are a ton of people reading this page who have access to old code that if they deleted it, it would be gone forever.
- Share via multiple of the many infamous "file sharing" sites - but pay close attention to the file size limits for free/anonymous downloads
- A torrent, seeded via VPS (as another user suggested). I haven't heard of people using UrDN for this specifically but I think that could be interesting.
- Share via DC++, use the chat system to tell everyone about the TTH at least 5 times within 2 days. (You could run a VPN between said VPS and your PC or use Xvnc/RDP and run DC++ directly from the VPS.)
- Find the underground community most closely related to the source code in question, or just general hacking forums, and share the link(s) there
- Carefully maintain your seed(s) (replacing dead links with new ones, etc) until the link(s) go solidly viral, then to be sure wait the same amount of time again. By this point you should have reached minimal saturation.
- Include SHA256sums of all the files on the website(s) you link to. Make a lot of noise about the checksums, particularly the checksum of the main archive (eg .7z) file. This will help minimize the number of people who try to latch onto/jump on top of your release and claim it as their own - they'll want to include their own message, which would alter the checksum. This is mainly for security, not vanity.
- If you ever think you want to provide updates, write a short message that describes yourself as the original source of this information, SHA512sum that string, and include the checksum in the release. You can then prove your authenticity by including the short message in the update; anybody can verify the SHA512.
- If you want to appeal to the warez scene or you think appealing to that demographic will help spread this, use the .rar format. It's not technically competitive anymore but scene groups traditionally continue to use it.
It should end up in enough caches to be self-replicating after an hour or 2.
Some fine folks have also made a version that works on modern computers: https://github.com/ja2-stracciatella/ja2-stracciatella
It tends to be an artifact of the build process, yes. Sometimes it vacuums up other random files like the developer's porn stash.
I cut my teeth on cracking stuff in the 8-bit era by writing an assembly-language "OLD" command for my platform back then (Oric-1/Atmos) that would undo the work done by the "NEW" command - i.e. replace a sentinel byte - so that I could get full sources for games that 'protected' themselves by doing a "NEW" command whenever CTRL-C was pressed. So many wonderful discoveries came to me that way ..
This must be the one and only, Justin Graham . Congrats on your move to Unity in January btw!
Fun to think about the game that could have been.
25 years and it Still works. I will start looking at the files.
Loom is an excellent game by the way.
Of course, most implementations would be 2+MB and require several frameworks.
Aw, man. I thought I was so original. (guess what I named copy copy-files-to-A:-drive)
One time I broke my mom's work computer by renaming the Windows (95 or earlier) system folder to be my name. She had to lug a desktop back to work on the bus so they could fix it. Sorry mom.
Also I loved to load executable files into a hex editor and look for readable symbols among the stuff that was beyond my understanding.
There was a bug in my hex viewer, though, where you could scroll off the end of the file and it would hexdump the next block on disk or memory locations beyond the loaded file instead. So I got very confused/paranoid viewing what I thought was the file from one game and seeing messages from another game or some of my own personal information.
Too bad I mixed up A and C while formatting... back then, nobody knew how to install an OS; machine was declared 'bricked' and when on the attick... it was 6 years before another PC entered our household...
Mine says "Rebel Assault PC-CDROM V1.7" so maybe there are different versions of the cd with and without the dev files.
Did some poking around and found a reference to my copy being "REBEL ASSAULT 1.2". I'll have to note that someplace.
We just had a false positive from our virus checker on our internal software prompting me to go search checksums etc (not easy when you software is as dated as ours) so I've been thinking about this, we are the perfect delivery vehicle for malware.
Because this was an internal product our response was to white list the file, but the whole dev and support teams were too eager to jump to do that before even thinking to verify the dll in question was legitimate. If a nefarious person every had enough access to our machines to modify these binaries then it would go out company wide.
Back then we were implementing our own bitmap drawing apps (simply called a PROGRAM back then) in Turbo Pascal (bgi256 ftw). We would challenge each other to come up with faster flood fill algorithms or smaller image file formats.
Good ol' times
Software products can have a surprisingly long life. (Which can also mean a surprisingly long time of providing customer support, too.)
Even the works that are still generating revenue after 15 years, surely most of them have already made 99% of the money they are ever going to make. The people buying rebel assault now are just a few nostalgia seekers. It will add up to a tiny tiny fraction of the total copies sold in it's heyday.
Except the ones (for example Nintendo) who do have a lot of cash, influence groups and lawyers to enforce their rights as long as they want.
Edit: Looks like EA owns it: https://en.wikipedia.org/wiki/Deluxe_Paint#Legacy
I looked past all of this considering the age of it, but I won't fault GitHub for yanking it. I'll host it elsewhere if that happens.
Note: Despite what this image shows, the text encoding is actually SHIFT-JIS.
There is a spritual successor of sorts, called Cosmigo Pro Motion. I haven't tried it yet (although I picked up a copy in a Humble dev bundle a while ago). I hear it's the closest thing to dpaint for a pixel-oriented workflow, but with more modern Photoshop-like features, as well as dpaint features from the later Amiga versions that never made it to PC.
Great for pixelling.
But once i picked up a demo cd that seemed to hold a demo of Birthright: The Gorgon's Alliance that seemed to be fully functional on the strategic level.