But sometimes life using DOS was not so great, sometimes you would be using DOS and all of a sudden things like this would happen. This sample also plays a small tune on the PC speaker while it’s printing, so this could be really embarrassing in a office environment.
Those bootsector viruses were incredibly resilient – your computer would be just fine, until you put in an older floppy that apparently still had a virus on it.
Good times.
So, at my time when I was studying at university we had “computers architecture 2” class, which meant we were basically learning x86 internals and assembly. Writing assembly is not my idea of fun, and for most people it was pretty much the same.
That is, until a freshly graduated teaching assistant assigned us tasks of writing DOS viruses. We first used DOSbox to learn how to do it, and then we booked a classroom that was somehow miraculously left with old, win95 machines on it, and we experimented with real floppies and tried to infect these machines with viruses as a test for our assignments. And then we’ve been re-flashing the machines with Noton Ghost to clean up after ourselves.
kajaman,
For me it was the inverse. I actually enjoyed learning bios interrupts and DOS TSRs from assembly. I aspired to learn those from a young age. Now I do websites for a living and I don’t think it’s nearly as much fun, haha.
When I worked on my OS back in the day I mostly used floppies. It was yesterday’s equivalent of a bootable usb flash drive. As primitive as things were, I still have fond memories of it. Maybe I’d like to do low level work on mobile devices, but in general DIY OS development has gotten much more difficult due to increased hardware fragmentation, closed hardware, increased risk of permanent bricking, and less opportunity for 3rd party operating systems in general. Oh well.
These were good times only because I was young, had a lot of more energy and had a kind of sponge brain. Yeah, could get straight from playing sports or any other kind of physical fun to code with just a shower and not a split of second rest!
Lets be frank, we have way better tools (editors, compilers, profilers, debuggers, disassemblers and whatnot) and, more important than them themselves, a way more access to documentation (OK, not valid for some devices, still).
Things now are more complex but on recollecting and comparing with other fields, it was to be expected, back then computing was really simple and, as times goes on, it is inevitable that system complexity kicks in, it does on any subject if we develop it long enough.
Also, it was not fun to fight the shortcomings of hardware and tools at those times to try to extract the little speed up or to make them work, which would allow things to run smooth. Even with all layer upon layer of current days, for computing things, give me “now” over any previous time.
acobar,
Granted, without the internet things were very different back then, however somehow or other I got my hands on the ralph brown interrupt list and it was absolutely fantastic documentation for BIOS/DOS/memory managers/drivers/ports/etc. This was also an era when bookstores and magazines had a lot more technical information. With the exception of platforms that inherited that legacy, generally I find that low level programming on new platforms these days (IOS and android) absolutely sucks for learning bare metal development. I learned so much because of the open nature of DOS and I think most other platforms of that period were the same. It was a different era when we had less, but I think it’s objectively fair to say that in terms of access that we had more.
I think most eager DIY types can handle the complexity. It’s restrictions, proprietary drivers and fragmentation that kills us. To be honest, I don’t think that linux would ever have gotten off the ground and adapted as widely as it is today if the PC hardware had been more like android devices are today. Not to point the finger specifically at android devices, we know apple devices are even worse, but we’re killing low level DIY OS development for the next generation.
I think you are right that many people feel that way, but I feel software development these days is a huge bloat-fest. It took quite a lot of skill to make those old machines perform well, you really needed to optimize your software. No doubt modern hardware is magnitudes better, but sometimes I find the inefficiency of modern code infuriating. Just this weekend I was setting up tplink powerline ethernet devices and the software GUI to set them up and monitor them was infuriatingly laggy (the devices themselves performed fine mind you, just the fricking software). It’s just one instance of thousands where we are loosing the battle against software bloat. Yeah yeah, I know I have to accept this is the way things are now, but I still reserve the right to complain about it and look back fondly at the old days when bytes and cpu clocks mattered to software programmers, haha.
While daydreaming don’t forget that past software was often less stable, less secure, typically less usable… 😛
It’s actually Ralf with an ‘f’ :).
@zima: true, but that was mainly caused by hardware incompatabilities. Software is *still* full of bugs (and still not very secure).
Oh, the memories: https://en.wikipedia.org/wiki/OneHalf
zima,
Obviously there are differences, some of which are pretty big cons. Most notably DOS had no multitasking, was console based, and ran in the same address space as the operating system, so technically DOS has no security by design – it does exactly what it’s told. However I don’t think it’s fair to say DOS was less stable in practice. Most DOS production software was stable and well behaved, you could run DOS all day with no issues whatsoever. The biggest common problem IMHO was configuring himem/EMS because base memory was so constrained. That was so damn frustrating, haha. Hardware support was up to each application rather than the OS developers due to the lack of OS abstractions; this was somehwat mitigated by the fact that most hardware were clones. DOS extenders and programming environments like RHIDE+DJGPP where pretty darn nice + robust and for years had me wishing I had something just as nice on windows & linux. This is exactly the reason I developed my OS on DOS at the time, it had the better tools IMHO.
In all honestly, windows was actually the less stable of the two for several years after it replaced DOS (ie 95/98/millennium). Random bluescreens were notoriously common on windows. Looking back all these years, I’d give the prize for the least reliable, least stable, and least secure mainstream technology to microsoft com components, which were responsible for many windows bugs, the atrocity that was active server pages (legacy ASP), and the notorious ongoing insecurities of the IE browser.
As you know, these days I prefer linux, although work often forces me to use windows so it’s usually a multi-platform setup for me.
jal_,
Thanks, I didn’t remember that.
You have a point against Win95, Win98 and WinME, but I was comparing against “now”. Besides, I was using a mix of Sun and PC with IBM OS2 on my Uni at that time. IBM OS2 was a pleasure to use for my use case, numerical computing with no worries about the terrible nuisances of MS Windows memory layouts.
I have, certainly, used many TSR at those times but the only one I remember fondly is Sidekick. There is no software of that time I would use instead of what I have now.
acrobar,
While I’ve heard good things about OS/2, sadly I never got exposed to it. Microsoft bundling tactics were extremely effective in building it’s monopoly.
Well no, I don’t think anyone would want to go back to DOS and loose modern features, in my post to you I was merely suggesting alt operating systems were more viable back then. There were a lot of technical things to learn about, but in DOS the progression of knowledge came quite naturally with fewer barriers to entry for DIY.
Don’t feel too bad about it; keep in mind that the underlying goal of OS/2 was to return to the old IBM the control of computer market – if that would came to pass, you could have missed Microsoft…
edit: @Alfman (hm, threading of posts didn’t seem to work? I could’ve sworn I replied to your post above…)
Well, I suppose _some_ DOS software was good (so we often ended up using it the most and remember it well), but there was lots of garbage; quite possibly more then now (certainly I don’t feel I’m lacking now in choice of good and typically at least free as in beer software)
zima,
I also thought the same, but I figured I must have made a mistake.
Software quality might be similar to today. I can’t say there was any one thing that encapsulated my interests. Back then shareware was big and I used a lot of it. I played games, built custom game maps, logged into BBS systems, I tried my hand at cad software, raytracing, I wrote the occasional document for school, wrote programs, composed mod music, read a whole lot of computer books. Of course I can do the same stuff and more today, but for what it was I think it was pretty good.
My favorite DOS boot sector virus story happened to me.
I was doing some C programming for a client of a friend. It was Windows programming, but the “Windows” part was really thin, most of the work just “Just C”.
I didn’t own any Windows machines, I have a NeXTStation and PowerBook.
So, my friend gave me a floppy with some resources or something on it. I don’t recall what.
I did my work on the NeXT, and on my Mac. Finally going to the clients office to do the final development on site.
I was using the floppy to sneaker net the code from one machine to the other, from Mac to NeXT and back.
When I finally got to the office, and plugged it in to their machine…TADA! It had been infected the entire time, but, naturally my machines were immune to (these) boot sector viruses.
I was an immune carrier, and I didn’t even know it.
Yeah, we had a jerk that had stoned monkey B on his Borland pascal disks, He had long since installed it on his computer and didn’t ever really use it himself. He just passed it on, and every so long a raging infection of stoned monkey b would flair up. We’d clean all the computers and disks that were in the lab, and scratch our heads. Took us a year and a half to figure out where the last hideout of infection was coming from.