10 ms·
Found a program I wrote in 1981 and decided to bring it back to life
- simonblack 5y agoI have programs written by me in the 80s. They were written in North Star BASIC and COBOL. I also have C programs written by me (say) 10 years old. When it comes to working out what the programs really do, and how they do their work, the COBOL programs are a breeze. The C programs and the BASIC programs, not so much.
- dn3500 5y agoI just searched back in my old files and found a simple C program that I wrote and was last modified in August 1981. I just now tried compiling it and although it threw up some warnings about return types and implicit declarations, it compiled fine and seems to run fine.
- userbinator 5y agoI have late 80s DOS utilities I wrote which I still use semi-occasionally, and some slightly newer (early to mid-90s) Win32 ones that see regular, even daily use --- the same binary works on Windows 10. I still have the source but I don't remember the last time I fixed a bug in any of them. The modification dates are all closer to the turn of the century than now.
- pjbk 5y agoMy astronomical 6502 assembly routines (ca 1987) compile and run fine in embedded simulators. Through the years it has always been in my todo list to port them to C, then Lisp, then C++, then Java, then Python, then Rust... But alas they do exactly what they need to do so the priority to rewrite them falls out of the map. And the main project why they were written in first place, a telescope interferometer controller, still remains unfinished.
- JeremyReimer 5y agoI had a similar experience with a BASIC game I wrote in 1987, which I revived recently in an emulator - the code itself was copied directly from ancient hard-sectored 5.25" floppy disks into a virtual disk image. The emulator had a bug in it, though-- it would scroll up the entire terminal if the static 25th line ended with an Enter or line feed, something that didn't happen on the original H/Z-89 hardware. I fixed the game by adding a single semicolon to the end of the PRINT statement. I wrote a little bit about the game and my feelings on reviving it here: https://jeremyreimer.com/rockets-item.lsp?p=282 https://jeremyreimer.com/rockets-item.lsp?p=282
- WalterBright 5y agoThe oldest program source I still have is Empire written in Fortran-10 for the DecSystem 10, circa 1978 or so. https://github.com/DigitalMars/Empire-for-PDP-10 https://github.com/DigitalMars/Empire-for-PDP-10 I thought backing it up using github was a good idea. A modern version that will run on Windows can be obtained from: https://classicempire.com https://classicempire.com
- Aeolun 5y agoFor those people that have a PDP-10 sitting around :P
- cmarschner 5y agoLooks like there are several emulators around: http://www.avanthar.com/healyzh/decemulation/pdp10emu.html#emulator http://www.avanthar.com/healyzh/decemulation/pdp10emu.html#e...
- anamax 5y agohttp://www.avanthar.com/healyzh/decemulation/pdp10emu.html http://www.avanthar.com/healyzh/decemulation/pdp10emu.html
- shakna 5y agoThanks to decent emulation, cheap hardware, and 3D printing, some of my friends have things like this [0] sitting around. [0] https://www.tindie.com/products/obso/pdp-11-replica-kit-the-pidp-11/ https://www.tindie.com/products/obso/pdp-11-replica-kit-the-...
- larsbrinkhoff 5y agoA PiDP-10 is in the works.
- WalterBright 5y agoYou can see my -11 here: https://twitter.com/WalterBright https://twitter.com/WalterBright Unfortunately, I gave it away long ago. Big mistake.
- _tom_ 5y agoI had a similar flashback recently. I remembered the old Star Trek game game from the seventies. Many versions of it are available on line, but each was specific to a particular version of basic - versions I didn't have. I ended up downloading one of the more promising versions of Star Trek, and then implementing a basic interpreter to run it, in python. https://github.com/cocode/TrekBASIC https://github.com/cocode/TrekBASIC If any one is interested. For me, part of the fun was implementing things like code coverage and data breakpoints. Tools I never had then, but were handy to have to find issues now.
- linker3000 5y agoI had fun working on the version that's now listed on the RC2014 site!
- pomian 5y agoHas anyone tried playing an old cassette tape, from a commodore for example, on a tape player, audio output to computer. Then transcribing? It would be cool to see how good or relevant some of our old programs might be. I have a mining program, from 1982, that calculates overburden tonnage, and so on, from user inputs. Similar to old DOS software, later updated to Windows, etc.
- pronoiac 5y agoI haven't done this, but I've bookmarked a few. Audiotap, for Commodore 64 - https://wav-prg.sourceforge.io/audiotap.html https://wav-prg.sourceforge.io/audiotap.html WAV2CAS and CAS2WAV, for a Atari 8-bit - http://home.planet.nl/~ernest/atarixle.html http://home.planet.nl/~ernest/atarixle.html TI-99/Sim, for the TI - http://mrousseau.org/programs/ti99sim/ http://mrousseau.org/programs/ti99sim/ CAS Tools, for MSX - http://home.kabelfoon.nl/~vincentd/ http://home.kabelfoon.nl/~vincentd/
- incanus77 5y agoPC-BASIC will do this as well: http://robhagemans.github.io/pcbasic/doc/2.0/PC-BASIC_documentation.html#cassette http://robhagemans.github.io/pcbasic/doc/2.0/PC-BASIC_docume...
- indigodaddy 5y agoVery cool stuff. Relatedly, I happened to click on the Ataribreakout.online link he posted at the end of the article, and it is actually surprisingly playable and enjoyable on mobile!
- mikewarot 5y agoThe Turbo Pascal code I wrote back in the 80's and 90's is a breeze to read.
- linker3000 5y agoAmen to that! Here's some Turbo Pascal and asm stuff of mine I rediscovered a while back. https://github.com/linker3000/Historic-code-PC-Pascal-and-ASM- https://github.com/linker3000/Historic-code-PC-Pascal-and-AS... I still use TP occasionally on a range of Z80 boards running CP/M: https://github.com/linker3000/z80porter https://github.com/linker3000/z80porter
- analog31 5y agoI was probably at my highest level of disciplined programming when I wrote in TP. Its been downhill since then.
- ramshanker 5y ago>>>>for non-old-timers, it was fairly common back in the day for magazines to publish code printouts, that users would then type in by hand to run on their computers<<<< Yea, HTML/Javascript code in the newspaper for me. Too bad, I had to do the running of the code in my head only.
- ggambetta 5y agoMy oldest documented program is here: https://gabrielgambetta.com/computer-graphics-from-scratch/dedication.html https://gabrielgambetta.com/computer-graphics-from-scratch/d... I was six and a half so it doesn't do much, but I guess it showed an early fascination with drawing things on the screen and making some sounds. Sure enough, years later I ended up starting a gamedev studio [1] and teaching computer graphics [2] :) [1] http://mysterystudio.com http://mysterystudio.com [2] https://gabrielgambetta.com/computer-graphics-from-scratch/dedication.html https://gabrielgambetta.com/computer-graphics-from-scratch/d...
- graycat 5y agoI have a program that old I just keep using and don't have "to bring it back to life": Given two text files A and B with the lines sorted in ascending order, write a file C with the lines in common between A and B. Sure, the program is just a little command line thing with name AINTERB for A intersect B since the program is a version of intersection in set theory. Ah, there is another one: Given a text file A with the lines sorted in ascending order, keep only the unique lines. So, that name of that one is UNIQUELN. One more, XBLNKLNS, for delete extra blank lines, that is, so that there are no cases of more than one blank line adjacent, in a row, together.
- Someone 5y agoFor those who want tools like these: AINTERB = comm -12 (https://en.wikipedia.org/wiki/Comm https://en.wikipedia.org/wiki/Comm) UNIQUELN = uniq (https://en.wikipedia.org/wiki/Uniq https://en.wikipedia.org/wiki/Uniq) XBLNKLNS = cat -s (GNU cat only; https://en.wikipedia.org/wiki/Cat_(Unix) https://en.wikipedia.org/wiki/Cat_(Unix) )
- laurieg 5y agoThe oldest program-like thing I have is a game written in the Adrift interactive fiction engine from 2001. Unfortunately, it's password protected and I can't remember the password. I wonder if there's an easy way to crack it. Sadly, all of the other programming I did in high-school is lost.
- wizzwizz4 5y agoYou could ask on https://retrocomputing.stackexchange.com/ https://retrocomputing.stackexchange.com/ – my HNQ sense says that it would be a very popular question.
- deepnet 5y agoI am currently pulling BASIC and Z80 assembly programs from cassette tape that me and my dad wrote in the late 70s early 80s - games and robot armdroid drivers for the NASCOM 2, a kit computer from 1977. Most run in the emulutor but luckily I have the original NASCOM2 and 2 armdroids so (hopefully) I can get my dad's physical SOMAS cube solver from his master thesis running again. Older than that is a punch tape teletype 'program' that I wrote thank you letters for me, pausing for input of the names of grandparents.
- justinlloyd 5y agoOne of my personal websites contains lots of game code I wrote going all the way back to 1978 when I shipped my first game. And one of my other personal websites contains many of my notebooks (since typed up) going back to those halcyon days of making an interesting game in just 500 bytes or so. 6502 C compiler. Word processor. Sprite utils. I've been slowly pushing my code on to github too, no matter how bad or disorganized it is. There are typed up notes of me working through how to juggle bits to fit more words in to a memory for a word puzzle game, or figuring out how to make a Minotaur hunt you down in a maze. It is amusing to look back on those notes at times.
- timonoko 5y agoLame, but I wrote Prolog that year. I read about it on some magazine and there was no mention of the cut. So I invented new definition symbol ":=". Under that rule there is no backtrack. It looked actually better and was more comprehensible than "!".
- TacticalCoder 5y agoI still have the source code for a DOS game I wrote around 1990/1991. I still have a few executable files and I've got all the code and the assets but I don't have the toolchain anymore and I don't have the build script neither. I don't remember which compiler I was using. So basically I've got no clue as to how to build it. But a blog like this surely makes me want to bring it back to life at some point!
- ChrisMarshallNY 5y agoI find these stories to be comforting. This chap is an old-school, hardcore, nerd. I can totally relate. I actually have a scanned PDF of the operator/maintenance manual for my very first professional engineering project[0]. I wrote that in 1986-7 (I also wrote the manual, and a later manual, for the host package[1]). The company is long dead, and I’m sure my baby has since been melted into slag, but I was very proud of it. It was my first real engineering project. I keep the manual around, to prove that I have been architecting significant software, from the very start of my career. The manual includes the full listing of an entire firmware operating system, written in Intel 8085 ASM. The host package was a mix of ASM (MC68000, I think), Pascal, and HP BASIC; designed as a driver system, for integration into programs written for early HP workstations. I don’t have listings for that, but there are a few snippets, sprinkled throughout. Good luck getting it to run, though… [0] https://littlegreenviper.com/TF30194/TF30194-Manual-1987.pdf https://littlegreenviper.com/TF30194/TF30194-Manual-1987.pdf (Downloads a PDF). [1] https://littlegreenviper.com/TF30194/ATE-System-Driver-Manual-1987.pdf https://littlegreenviper.com/TF30194/ATE-System-Driver-Manua... (Downloads a PDF).
- bjoli 5y agoOh man, I just did the same! I have some code written in the late 90s in common lisp. Most of it ran like a charm, except for the console graphics that used some very obscure library I never found. I even fixed some bugs :)
- snvzz 5y agoPretty cool. It wouldn't hurt to publish the code!
- Torwald 5y agoThe "CLS" in line one was duty in those days. "F#* all your crap, here comes my program! Tadaa!"
- indymike 5y agoA few years ago I found a box of old floppies that had a bunch of code I wrote in high school. Some BASIC, some Pascal, some C (some Unix and some Turbo C), and some Prolog. Mostly games, assignments and a couple of attempts at making shareware. BASIC did little to abstract logic and flow control and most interpreters only had global scope for variables. As your software got more complex, it got harder and harder to debug. Additionally, no real way to do any real dynamic data structures - you had only fixed length arrays. Turbo Pascal was great, but had lots of little annoying limitations. String length had to be declared up to 256 characters (I think this got fixed in a later version of Delphi). These limitations made it harder to do lots of things that were really easy to do with C. Prolog was really cool - but it was useful for a limited set of uses. I wrote a couple of tries (really cool to my 15 year old brain) at adventure games, and prolog made a lot of it really easy since most adventure games were all about collecting a set of conditions to solve some kind of puzzle. C was easily my favorite - it was harder to understand at first with pointers and having to manager memory allocation, but you could build anything you wanted with it. There were a few programs where I implemented in BASIC, and then rewrote them in Pascal, and then in C. Each time, the application became more useful because a lot of limits were removed. Honestly, C has really held up well, and a lot of that has to do with having no artificial limits... you still had hardware-imposed limits though. C did have a lot of built-in footguns... That said, I really love a lot of modern languages - so easy to do big things.