Ever hear of Lotus 123? It is an old spreadsheet program that dominated the early PC market, taking the crown from incumbent Visicalc. [Tavis Ormandy] has managed to get the old software running natively under Linux — quite a feat for software that is around 40 years old and was meant for a different operating system. You can see the results in glorious green text on a black screen in the video below.
If you are a recent convert to Linux, you might not remember what a pain it was “in the old days” to install software. But in this case, it is even worse since the software isn’t even for Linux. The whole adventure started with [Tavis] wanting to find the API kit used to add plugins to Lotus. In theory, you could use it to add modern features to the venerable spreadsheet program.
The $395 software development kit wasn’t very common and there was also a Unix version of Lotus 123, but no one seemed to have a copy of that. [Tavis] eventually found someone who ran a circa-1990 BBS and had the data on tape. Turned out there was a hot copy of the SDK that he was able to use. But he noticed something else in the BBS’s list of files: the long-lost Unix version of Lotus!
An investigation found the installer used TD0 files which took some research. Luckily, a utility exists that can convert these to raw disk images. Inside was a very large object file. Apparently, in the days without dynamic loading, that object would be linked with plug in modules to install them.
The object file had all of its debugging information intact which shed a lot of light on the program’s internal operations. The old executables used COFF format but it is possible to relink it to an ELF file. Of course, it isn’t just that easy. [Tavis] wrote a small program to remove the old-style Unix system calls so they could be rerouted to Linux system calls. Some calls just pass through, but others need some translation due to differences in things like structure layout, sizes, and alignment.
In the end, it all worked but didn’t have a valid license. However, [Tavis] felt like since he did have a license and the software is abandoned, he was within his rights to crack the license check.
We are well-known abusers of spreadsheets around here. Of course, we aren’t the only ones.
83 thoughts on “Lotus 123 For Linux Is Like A Digital Treasure Hunt”
I love it. :)
My days go back to CP/M and quattro pro was my favorite. Loved it.
The first spreadsheet I’ve used at school :)
I find it strange to imagine that anyone wouldn’t remember Lotus 1-2-3, but I have to accept that it’s a definite possibility.
There are some people alive today, who don’t remember what the Old World trade center Complex was like; and that was just 20 years ago.
Thise of us who were alive way back then(like me Fondly remember Lotus 1-2-3, and Other Relics of the past like WordStar, and (Ashton-Tste)dBase Ii and Dbase III+, and let’s Not forget, Clipper 4.,4.5 &5.0 (the primary programming language and compiler for dBase. Fond memeories, yes, though I still have some affinity for Quattro Pro, and Paradox (spreadsheet program &database programs( From Boreland) 😉
Have thought of giving a go at trying to run those nativelt in Linux… might give it a go sometime this year. 😉😊
Hmmm. I remember the desk spanning boxes it all came in.
Clipper kind of sucked, but my next job back then was programming Dataflex, the KING of suck.
Dataflex when a COBOL programmer gets drunk with a Basic programmer and they invent a language they can’t recall.
Things aren’t perfect now, but at least I’ll never have to gen sys on netmare 2 again (off 360k floppies). I ultimately shot that hard drive with a 30-06. Felt good.
I remember my father, who was a COBOL programmer at IBM trying to convince me that Dataflex was the FUTURE of programming!
But he also tried to convince me he managed to reduce a 4k file to a single byte by running it through ZIP repeatedly (=
I never worked with DataFlex but I did work with it’s ugly twin, Jyacc Jam, which was like visual basic 1.0 mated with COBOL. Absolutely atrocious. It turns out that was the first time I spent effort learning something and did not put it on my resume. I absolutely never wanted to work with it ever again.
Along with Lotus 123 I used to run HAL and it made life so much easier.
How far we’ve come… in 1985 I could wow co-workers by entering their power bills into 123 and actually DRAWING A GRAPH!!! We’d never been able to do that in V-Calc!!
Way back when, you had separate “Business Graphics” packages, that took what your spreadsheet puked and made it into bar graphs.
I used lotus 1-2-3 in my second year of uni. It was a godsend for accounting subjects. It blew my mind how much of a productivity gain it was to go from hand calculations on paper to digital!
Who else remembers oleo? Circa 1994 if I do recall.
‘oleo’ and also ‘sc’. But Lotus 123 TUI is probably better.
I’ve still got SC (SuperCalc) versions 3 and 5 able to run within wine. My dad still runs his business on SC5, but he’s being forced to move over since the tractor feed dot matrix printers are getting harder and harder to support.
Open-source and eBay for parts.
At University I used Supercalc to calculate and plot the NACA profiles of turbines, graphical effect was amazing, 1985 circa
My household budget has lived in an sc spreadsheet (well, a succession of them) for the last decade or so. The key advantage of a text-based spreadsheet over a graphical one, from my perspective, is that I can trivially log in from anything, anywhere, and update it; all I need is a ssh client.
In these days all the magazines asked what will bi the next lotus 123, excel and others will be the same idea better implemented, but actually no packaged software will be so successful.
Lotus 1-2-3 also was one of the main reasons that Expanded Memory was created in the 80s (specification was known as EMS).
EMS for DOS was an bank-switching mechanism that could be used on PC/XTs.
There used to be an entire market of so-called LIMulators, a reference to Lotus/Intel/Microsoft.
Some required external hardware, some used a swapfile on HDD, some used the MMU of 80386+, some used other forms of memory like XMS (Himem.sys/EMM286).
OMG this brings back memories!!!
So, if we can now run Lotus 123 on LINUX, I can only hope that Lotus Notes will follow!
I dreaming about CorelDraw 3 on linux great program, pity not working yet because is incompatibility with libc
meybe anybody can help?
If you have the windows version, install with Bottles. freely downloadable from Flatpaks and Snaps. After install is done choose Applications it will take a moment to mimic !Windows 10) default 8 or 7 with all the required .dll and DirectX to name a few and your ready to go. GAMES also work with Proton powered by Steam. Bottles is configuring Wine so you don’t have to.
No I talk about LINUX version of CorelDraw 3
no emulation but NATIVE
Have you tried running it within a virtual machine?
Back in the 90s, CorelDRAW! (Win16) ran on *nix through the help of WABI..
I have Wordperfect for Linux, the one that directly ran on Linux. I did try it, but that was twenty years ago.
It was a time of companies hoping for success with Linux, so they’d issue distributions and port their commercial software.
Yah Corel was quite linux friendly, then Oracle happened to it.
I had the Linux version of Creatures: Internet Edition.
That along with StarOffice had me convinced that the Linux Desktop revolution was right around the corner!
I would be interested in a copy of this. I bought WordPerfect 4.0 for MSDOS, and later WordPerfect running on SCO-XENIX … one of the first versions of UNIX that ran on the PC platform!
Couple it with Trade Wars 2002 and you have EVE Online, 90s edition.
Visicalc, Supercalc, those were cool. Lotus 1-2-3 was amazing. First used it on a Data General DG/ONE
If only I had spreadsheets and word processors when I was in college…
Great job! There’s definitely blind spots in digital preservation efforts. Anything beyond (foremost) games, OSs, compilers, and text editors trends to get ignored. But digital archeology (when that someday becomes a thing) will be interested in work as much as play.
Speaking of which, someone get on finding and scanning the Cornerstone manual before it’s too late.
“There’s definitely blind spots in digital preservation efforts.”
When V’ger returns, and we don’t have the right code, we’re screwed!
Well played, given that Star Trek: The Motion Picture is in theaters right now.
Mister FPGA can help with that! Although most people use it for games, other software should also work since the cores are complete enough to simulate the whole system + os for a wide range of retro platforms.
My school was cheap, we had to use “As-Easy-As” clone…. while strangely all machines had a copy of Excel on windows but no don’t bother with that, 1-2-3 is the industry standard, and that you shall learn.
Ah, yes! As-Easy-As was a freeware/shareware(?) program that was available from the SIMTEL archive of PC software. It wasn’t as powerful as the commercial Paperback/Pocket Calc on my Commodore 128, but I used As-Easy-As at home for a number of years after I “graduated” to a PC XT. I’ve never used 1-2-3, but As-Easy-As worked well for me and was free.
When I went to university in 1989 (Pharm. D program), we were the first year that did not learn programming in Pascal, but instead got trained in the state of the art programs of the day: WordPerfect 5.1, Dbase 3+ and Lotus 1-2-3.
Too bad, would have preferred a start in programming.
In school I went to, we had only one route. Applied CS. Applied was in depth computer science where math/science/electronics was stressed along with all the CS courses. Pascal was the main language. There was only 23 (from memory) of us left standing to graduate. If I took one more class I could have had my math degree too, but I was burnt out with school after 4 years doubling up on some classes. A few years after I was gone, they added another route where business apps/programming was stressed (we called/call it the ‘watered down’ route) and you didn’t have to take any advanced math where more could graduate. All about money I suppose…. Now I think I heard they use Java of all things for main CS learning :rolleyes: . Oh well.
Three are three flavors of CS, based on what school it is taught out of.
CS out of engineering.
CS out of math.
CS out of business.
That list is in decreasing order of quality of the school and it’s grads.
Don’t hire CS majors out of the business school, they are generally useless. There might be exceptions, but I’ve not run into one. Granting I haven’t been hiring them for decades, so I might have missed him. I worked with a couple before I was in the hiring loop, they might as well have been MBAs.
Also never hire someone with a BA in a science. That’s a consolation prize. e.g. After failing p-chem the third time a student will be given a BA in chemistry and told to just go away.
Also also: never hire some with a degree in a ‘science’. No sociologists etc. Your better off with an English or history major, at least they know they’re not scientists. Just hire the smart ones.
Other people’s sweeping generalities are of course flawed, unlike my own… ;-)
I’d say you want Eng flavor for hardware and OS, Math flavor for deep math simulation applications, and Biz to decide which cloud office suite is least awful for the admin staff. Or Eng will assume they need to build a TOP500 machine, Math will assume one is supplied, and Biz will express surprise that you don’t just order an i9 from Dell.
It occurs to me immediately, that hiring (or not), based on such school qualifications seems fundamentally flawed. Instead of this elaborate hierarchy of suck, maybe you should be looking for other qualifications, or just get out of HR altogether! I’m reminded of the examinations of medieval China, where a grade in poetry or calligraphy could determine whether one got a favored position in the Imperial Court, or out on the desolate frontier. A very elaborate system of qualifications, which did little to increase or even insure any standards of quality at all.
In my case, I was Supervisor of Software Development. HR has nothing to do with initial hiring other than vetting the person and sending over the resumes on the front end. We did look for other qualifications as it was in person interviews. The BS degree just got you in the door…. Proved you could persevere though 4+ years of formal training. Required code samples and school transcript and we had a list of questions/problems that the person needed to answer (on paper so each applicant was presented with same questions to be fair). Plus general chit-chat as a ‘social test’ so to speak. It was enlightening.
I did for-real Lotus 1-2-3 contracting in NYC. 1a had some real issues, but 2.01 fixed them up nicely. Those were the days. Also loved me some Quattro Pro, from Borland — and the reason for the Lotus “look and feel” lawsuit.
Yes quattro means 4, borland was doing great things
Oh my gosh I never realized the connection in the name there.
Obvious when you say it in foreign… énas, dos, trois, vier
Also those were the days of the Audi Quattro, the amazing 4×4 wheels, sedan rally winner, that created the Audi brand
I used Quattro too in those days. Actually I used mostly Borland products in those days starting with Turbo Pascal, then C, and so on. Don’t remember using Lotus 123 much at all.
As to above, nicely done. To bad you can just recompile the source and go :) .
I still have still wrapped never opened most of al the software that Borland sold in 1992 when a software engineer gave them to me as I was leaving from California to Louisiana as a present. Never opened them. Quattro, Sidekick , DBase , C
Programming, and some more.
are you wondering if they’re valuable? I personally don’t buy unwrapped (or untested) software: too great of a chance that temperature changes, freezing cold to roasting hot, among other things, makes the disks unusable. I think it would be fun to test them out, then sell them, but I have no idea whether “the market” puts premium value on unopened disks. It could conceivably be the worst thing to do before a sale. Then again, I don’t think they will be significantly valuable YMMV
Shrinkwrap machines have got so affordable now that it’s also the case that shrinkwrap guarantees little. Collectors have been finding scratched up disks and missing materials in “sealed” software off eBay of late. Some are also removing shrinkwrap as it is believed to damage the box long term.
Lotus 123 was a good test for video cards. When you switched from text mode to graphics mode to show a chart, the program would hit the CRTC registers over and over and over with about 30 identical writes. Not clear on why it did that but we had to handle it gracefully.
The DOS version of 123 is written in 8086 assembler, very carefully tweaked for high performance. It was fast fast fast on 4.77 MHz 8088, on modern hardware everything is instantaneous. They sure don’t write software like this any more. It still runs great on freedos. Bust out your old copy and fire it up, it makes the latest excel look really bad in comparison.
Did it run fine on MS-DOS compatibles, too, not just IBM PC compatibles ?
If so, it was well coded really.
Actually it did NOT run without incident on many first-generation IBM PC compatibles. Compaq made its mark by reverse-engineering a custom BIOS which made it (for a while) the only true 100% IBM compatible. Plus it was a portable (by the standards of the time). Eventually Lotus started making versions for other BIOS/brands. I remember one for the DEC Rainbow – dual-bootable in either MS-DOS or CPM, but Lotus 1-2-3 ran only under MS-DOS on the machine.
actually even Rainbow’s DOS wasn’t very compatible with PC-DOS, I’m surprised 1-2-3 ran. There were very many early MS-DOS that had quirks that made running PC-DOS software problematic. Also, there were also actually several “luggable” 8088 and 8086 “clones”. At least a couple had copied IBM’s BIOS exactly. IBM settled, they did not want to risk a court decision that firmware or software wasn’t covered by copyright. It was Apple in 1983 who got the court finally ruling that copyright also applies to “non-human readable” code
Interesting, IBM also didn’t buy MS DOS and basic for non monopolistic reason
PS I actually found that Lotus 1-2-3 for DEC Rainbow (version 1a at least), was distinct from the package of disks sold for IBM PC. And yet a separate one for PCjr! https://winworldpc.com/product/lotus-1-2-3/1x
Early PC-DOS was quite distinct from other MS-DOS. It was with a wink and nod, that Microsoft agreed to give Compaq a very compatible version, because MS still kept a pretense of working with IBM on OS/2 for a while, compatible DOSes were an obvious backstab. Perhaps you knew this, but also, remember, Lotus was a big and profitable enough to make specific versions. There was a different DOS version for Wang, another for DEC, another for Tandy 1000, even for PCjr https://winworldpc.com/product/lotus-1-2-3/1x
After 1-2-3, the sharp cookies at Lotus created a better spreadsheet called Improv: https://en.wikipedia.org/wiki/Lotus_Improv Unfortunately they launched it on/with Steve Jobs’ Next computer, which platform didn’t catch on.
The modern day successor of Lotus Improv is called Quantrix https://www.youtube.com/c/QuantrixModelerSoftware and it is super cool. Agile, multi-dimensional modeling.
Even many years after NeXT, Mr Jobs called out Improv/Quantrix as the best spreadsheet ever made https://youtu.be/GnO7D5UaDig?t=1922 I never used 1-2-3 or Improv, but I use Quantrix every day, rebuilt multiple times and much improved since 1997 :-)
We would boot all the PCXTs in the office each morning with the Lotus 123 floppy you needed because of the copy protection then remove the disk so it didn’t get lost. When you turned the machines off for the weekend you could see the top menu and row/columns burned into the green monitor.
Yep…. Been there on the hiring side and understand what you saying…. We liked the farm kids too. Seemed they had a good work ethic.
This was a reply to HaHa above …. Must have did the wrong reply …. Sorry about that. Can’t delete/edit…
I have a complete Lotus Smart Suite for O/S 2, never installed. Anyone interested purchasers?
Just as soon as one finds that single individual running OS/2.
Tipo could build a virtual appliance
I worked on the lotus 1-2-3 for Unix project. I wrote the original PostScript printer driver for Lotus one two three and I ported it to Unix with the help of some Unix gurus that lotus had hired for the task. It was a heady time as lotus was in its heyday.
those were the days!
I was beta tester for the graphics for the original Lotus 1-2-3. That was because I had a Hercules graphics card which was a lifesaver (the card) for Lotus. Loved 1-2-3 and got much usage for my consulting biz.
I was an authorized reseller and installer for Lotus 123 on Unix, along with WordPerfect, and Dbase. This brings back real memories. I would love to get copies that run on Linux just for nostalgia.
I used Lotus 1-2-3 on a Sun Sparcstation circa 1996 on a Wall Street trading floor. There was a built-in backdoor which allowed one to get a shell prompt with root access with a simple set of keystrokes which I’ve long forgotten.
Yes there was.. and I long forgot as well…lol!
Lotus 1-2-3, Wordperfect, and dBase. Also when slide decks were slides (or transparencies).
In which case, here is a page of instructions for you!
Still works just fine on modern distros.
Thanks, but I think I’ll stick with LibreOffice :)
never really “used” it, but;
lotus 123 for DOS was my first expierence with both dual-monitor as well as VGA,
allowing COLOUR and GRAPHICS, wow.
a quick trip to the mainboard’s built-in (ROM) BIOS configuration/setup utility and voila!
VGA at the command prompt, and all it’s adjustable colour capability.
this also led to many a video-game, sorry zork!
I distinctly remember buying a text for Lotus123 but never got round to learning it because I was busy playing games.
Lotus 123 was the best and still the quickest because it was before the mouse. Therefore everything was done by keystrokes and you could use the keyboard buffers on the pc to store the keystrokes allowing you to go faster then software and pc allowed. Nowadays reaching for mouse is soooo slow compared to Lotus. I never even looked at the monitor, I memorized all the keystrokes
I had forgotten those programs where I could type ahead faster than the computer would respond. Now you just have to wait.
Even though the computer might be slow to write the screen, it was still faster than mousing. I had to use a trackball style mouse because the keyboard tray was too small to move a mouse, and the movement from keyboard up to the desk to use the mouse was causing problems with my shoulder.
I also used dBaseIII+ quite a bit. I rewrote quite a few data entry panels to use the keyboard instead of mousing.
The correct name of the software is Lotus 1-2-3. Anyone who really used it knows this and would never write “123”. Kids these days…
Please be kind and respectful to help make the comments section excellent. (Comment Policy)