Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Programming Apple

The Apple IIgs: On a Machine This Slow, You Had To Get Weird (bdmonkeys.net) 69

Long-time Slashdot reader garote writes: It's the year 1991. You're a teenage computer geek.

You've just upgraded to an Apple IIgs, your first "16-bit" computer. To relieve the crushing boredom of your High School coursework, you and your friends embark on the computer geek equivalent of forming a heavy metal band: Making your own video game.

You meet at the benches during lunch hour, and pass around crude plans scribbled on graph paper. You assign each other impressive titles like "Master Programmer", "Sound Designer", and "Area Data Input". You swap 3.5" disks like furtive secret agents, and stay up coding untl 3am. Your parents look at your owlish eyes — and your slipping grades — and ask if you're "on drugs".

If that sounds familiar, this essay may prove interesting. It uses the game my friends and I started — but didn't finish — in High School over 30 years ago, to explore the absurd programming contortions we did to make it playable on the Apple IIgs: The red-headed stepchild of the Apple II line; a machine that languished for six years without a hardware upgrade to avoid competing with the Macintosh.

Thanks to the recent release of the first cycle-accurate emulator for this machine, you can actually play the game in all its screen-tearing glory. You can also explore the source code which has survived for 30 years, and been adapted to build on modern hardware thanks to Merlin32 and CiderPress II.
"Nowadays, the content of the game itself is only good for an embarrassing laugh," according to the web page, "but I feel that the code we hammered out shows the unique challenges of a bygone era, which should be remembered..."
This discussion has been archived. No new comments can be posted.

The Apple IIgs: On a Machine This Slow, You Had To Get Weird

Comments Filter:
  • In the early 1990s I took a brief excursion from my Commodore loyalty to acquire a IIgs, at the behest of a friend who was an apple fan boy. It was for the most part a big Giant turd, and also locked up with apple's typical walled garden approach to hardware. I went back to Amigas after that, until PCs caught up in the graphics and pre-emptive multitasking department (Windows NT) and the Amiga slowly faded away by the mid-90s. Heady times to be a computing enthusiast.

    • by zephvark ( 1812804 ) on Sunday March 10, 2024 @12:39PM (#64304419)

      Apple did not have a "typical walled-garden approach" at the time. The massive success of the Apple II series was due, in a large part, to all of the documentation being available, with detailed hardware and software specs. This was in contrast to all of the other computers you could get. Steve Jobs hated that! ...although the approach later lead to the wild success of the IBM PCs, while the closed Mac systems became a weird boutique item.

      • by Megane ( 129182 )

        while the closed Mac systems became a weird boutique item.

        The Mac was very much NOT closed. The documentation may have been hard to get in its very early days, but Apple literally had it printed in a phone book format to help get it out cheaply. The actual problem was that it was expensive, with Apple's "typical" high-margin price tag. (even the Apple II had quite a bit of mark-up) It was also alien to what people were used to back in the day, being one of the few modern computers without any character generator or text mode, leading to many potential developers n

        • by R3d M3rcury ( 871886 ) on Sunday March 10, 2024 @07:05PM (#64305241) Journal

          The documentation may have been hard to get in its very early days, but Apple literally had it printed in a phone book format to help get it out cheaply.

          I'm not sure that's entirely accurate.

          There used to be a group external to Apple called APDA (Apple Programmers/Developers Association) which actually published the "Phone Book" version of "Inside Macintosh" because Apple wouldn't do so in such a cheap manner so it was taking forever to get API documentation out. I believe Guy Kawasaki talks about this in "The Macintosh Way."

    • by herberttlbd ( 1366107 ) on Sunday March 10, 2024 @12:56PM (#64304457)

      The IIGS was Apple's attempt to extend a dead-end like Commodore tried with the C128 but I don't know where you get that it was a walled garden. Of the big three 8-bit systems, the Apple II line was the only one that was open enough that people could make clones. Apple didn't like clones but neither did IBM; both went after cloners where they could with various degrees of success. And the IIGS didn't have as many clones as the earlier lines but that was because the 65816 was not compelling over the 680x0 or the 80x86. Maybe you're referring to the down-clock but it wasn't like speed made the thing any better - there were accelerators and they wstil didn't make it a competitive alternative.

      I spent a long time in the Commodore 8-bit ecosystem, with a long stint as a service technician, and the after-market expandability was nothing compared to the Apple II line.

      • by Misagon ( 1135 )

        Did the Apple IIGS have any clones at all?

        It had several Apple-proprietary chips, including the video controller.

        • by garote ( 682822 )

          Mitchell Spector, 18 years ago:

          No, however early prototypes were designed by VTech and Bill Heineman.

          Vtech was working on next generation Laser computer that was compatible
          with Apple IIgs software, and much like the Laser 128 series, added features
          above and beyond the original Apple (i.e. faster CPU and better graphics).
          They actually demonstrated a prototype at the first KansasFest in 1989.
          I think Apple prevented it by refusing to license the Apple IIgs toolbox.

          In the early 90's Bill Heineman was working on

          • I remember the VTech stuff, when I compared the internals to an Apple IIe I was amazed, some guys in a sweatshop in Kowloon built a far more sophisticated system than a large corporation like Apple (from memory most of it was one or two giant 64-pin ASICs), and then sold it at a fraction of the price of Apple's one.
            • Pretty racist to assume any Hong Kong company is a sweatshop. VTech has a pretty interesting history in the story of 8-bit home computers. Besides their Apple II clones, they had their Z80-based Laser 200, which was sold under various local brand names in different countries. They also spearheaded the "electronic edutainment" market, starting with the Socrates console. They're still one of the biggest names in those kinds of electronic toys.

              • The building VTech operated out of at the time in Kowloon was... claustrophobic? It was certainly pretty close to a sweatshop.
    • Your parents look at your owlish eyes -- and your slipping grades -- and ask if you're "on drugs".

      You bought an Apple II series machine in 1991. The answer must have been: yes.

      The Apple IIgs was a fine machine... in 1986. By 1989 the whole Apple II series was on its way out, and it wasn't even a little bit ambiguous.

      • by garote ( 682822 )

        Hey man, I took what I could get. We traded the Apple IIe for it, to a family friend, along with $300 to sweeten the deal, and it came with an ImageWriter ][.

        $150 of that was money I saved myself, which was not easy for a 15-year-old.

        • Hey, I saved $1000 bagging groceries to buy a hard drive for my Commodore 128, so I get where you're coming from. But that was in 1988. By '91 it was plain that except for game consoles the future held little room for machines that weren't pc compatible.

          • by garote ( 682822 )

            You do realize you're critiquing the decision-making of a 15-year-old, from a position with 33 years of hindsight, right? :D

        • Yeah, it's easy to forget just how freaking EXPENSIVE computer stuff was back then.

          The IIgs was indeed old hat by 1991, but if you could buy one second hand for a few hundred bucks, or trade older hardware for it, it was a hell of a lot better than continuing to use an Apple IIe or similar older machine. Not to mention, if you were a heavy Apple II user, that continued compatibility with all your existing hardware and software was a nice touch.

          I had an Apple IIe until 1993. Those last few years were painful

          • Yeah, it's easy to forget just how freaking EXPENSIVE computer stuff was back then.

            My Atari 400 was GBP350 and the 48K upgrade another GBP100 then GBP350 again for the disk drive back when my take home pay was GBP150 a month. I had multiple loans running in parallel to buy all the stuff.

      • Cue the Yugo CPU [netfunny.com] rant, circa late-80s some time.
  • by Anonymous Coward on Sunday March 10, 2024 @11:57AM (#64304327)

    It's the year 1991. You're a teenage computer geek.

    You've just upgraded to an Apple IIgs,

    Weird: it was released in 1986 and discontinued in 1992. Thatâ(TM)s a teenage geek pretty late to the game. As I remember it, the Commodore Amiga or Atari ST were considered much better value by us teenagers at the tlme, than a PC or Apple. Especially the Amiga, which had the best games as well as other audio and graphical software.

    • by Calydor ( 739835 )

      I can confirm; I got my Amiga600 in '91 specifically on recommendation from a geek friend; PCs were still on the 386 generation, and most video output unless you REALLY splurged (or was it even possible yet? Not sure.) was VGA in 16 colors. They were not good gaming computers yet.

      • by Zarhan ( 415465 ) on Sunday March 10, 2024 @01:13PM (#64304497)

        VGA supported also the 320x200 with 256 colors.

        Wing Commander came out in 1990, Wing Commander II in 1991. And Sierra's games were starting to be at their best (SCI engine). If you had 386, VGA, and a Sound Blaster card (not to mention Roland MT-32 or LAPC-1, but that counts as splurging), Amiga was already far behind.

        Amiga had it's golden years around 1987-1990. E.g. Starglider II came out in 1988.

        • The original Star Control game was released in 1990. Monkey Island 2 and most of the early Commander Keen series were released in 1991. It was all playable on a Tandy 1000 RLX (a 10MHz 286 with VGA graphics, 1MB of RAM and a 40MB hard drive). By late 1992, you really did need at least a 386 though if you wanted games to run well. Technology moved fast back then.

        • And Amiga by 1991 could be hard for about $800 with a good quality color monitor. The 386 you just described would set you back about 3 Grand.

          PCS didn't become affordable until the Pentium 166 hit and Intel started to massively drop their prices. Before that unless you came across a used 8088 or 286 and a thrift store you were paying through the nose
          • by Calydor ( 739835 )

            Amiga had a different advantage, too. A PC required you to buy a monitor as well as the computer, while the Amiga natively could connect to the TV you more than likely already had.

        • by AmiMoJo ( 196126 )

          Such a set-up was very expensive though, compared to the Amiga. It was also a bit jank - half a dozen different sound card standards with varying levels of support from every game, for example. The early 90s were still golden years for the Amiga.

          Of course neither of them could touch the Sharp X68000 in many respects.

    • by olsmeister ( 1488789 ) on Sunday March 10, 2024 @12:28PM (#64304403)
      Apple had pretty much dominated the school world. In some cases, getting your parents to get you an Apple machine may have been an easier task than a Commodore or Atari option, at least that was the case for my friend that had one of these. For those of us that were spending our own money... there was no better deal than Commodore.
    • by DaPhil ( 811162 ) on Sunday March 10, 2024 @01:23PM (#64304521)

      There is nothing "weird" about this. From your post it sounds like you were very well off and able to afford, and been able to buy, the latest stuff. Nothing wrong with that, but many of us didn't have any money and had to beg their parents for purchases, who went for used stuff. So we got stuff late.

      • It depends, I guess. My parents were middle class and we lived in an average middle class suburban neighborhood. In the early 90s, any other kid I knew who had a computer at home, had a PC. I those days, it was common for the computer to be a "family" machine owned by the parents.

        Contrary to what someone else said, the general opinion seemed to be that the Apple computers at the schools were outdated crap and PCs were "real" computers. By 1991, even Radio Shack was selling PCs with VGA graphics. Grante

        • by garote ( 682822 )

          Can confirm. The Apple IIgs was the only thing I could convince my parents to upgrade to, even once I saved up half the money, in 1991. But I was already envious of the PC and what it could do. Even the Amiga stalwarts were drifting away. My last year of High School I put a PC together from parts and the Apple IIgs was shoved into a closet.

    • by AmiMoJo ( 196126 )

      I hear that the IIgs was popular with schools, so maybe their parents got them one for that reason. We had a similar thing in the UK where some kids got a BBC Micro or the cheaper but related Acorn Electron, because of the school and BBC endorsement.

      Might also have been due to cost. Could have been used, as I don't think Apple computers were ever cheap.

      • by garote ( 682822 )

        That is exactly what happened. Both my parents were high school teachers, and they got an Apple IIe for the home on a very helpful discount. The Apple IIgs seemed like the obvious upgrade path. But by the time I saved up enough money to pay for half of the cost of buying a used Apple IIgs from one of our family friends, it was 1991.

        Me and my friends were all aware of the hardware that hit the market between 1986 and 1991, like the Amiga 500 for a start. We just couldn't convince our parents to help upgr

    • Computers were not exactly cheap and teenagers are not notoriously wealthy. Certainly when I was a teenager I was running many generations behind and usally relied on what I could scrounge off the classifieds for fifty quid.

      What you could get was a combination of what you could afford, what was available and perhaps what your parents would help with.

    • It's the year 1991. You're a teenage computer geek.

      You've just upgraded to an Apple IIgs,

      Weird: it was released in 1986 and discontinued in 1992. Thatâ(TM)s a teenage geek pretty late to the game. As I remember it, the Commodore Amiga or Atari ST were considered much better value by us teenagers at the tlme, than a PC or Apple. Especially the Amiga, which had the best games as well as other audio and graphical software.

      Yeah. I remember getting a 486 in 1991 and that was a 32 bit machine.

      • Yeah?

        How much did that 486 cost?

        I upgraded to a BBC master in the early 90s because I found one for GBP50 locally, including some software, a printer, monitor, bunch of disks. Not every teenager could afford the latest in cutting edge business PCs.

    • by tlhIngan ( 30335 )

      Schools were using Apple computers way way way longer.

      The Apple IIgs was the popular computer most of us used through at least 1994 when they started putting out Mac Pluses for students to use freely (and teachers got Mac SE30s) and this continued through the mid 90s.

      Schools loved it as the Apple II and Mac had really long lifespans (like I said, the Mac Plus, released 1989, was what students used in 1994). There was one really lucky computer lab that got the first PowerPC Macs.

      Generally speaking, the paren

    • by sonnik ( 49704 )

      Keep in mind these retailed for about $3000 - $3500 USD back around 1987. ($8000+ in today's money). So, back then - you weren't exactly swapping the family PC out all that often.

  • by Calydor ( 739835 ) on Sunday March 10, 2024 @12:01PM (#64304335)

    Computers in The Olden Days did not have the power necessary to simply brute-force your way through what you happened a given program to do. You had to optimize, had to cut the fat away, and basically be smart about every single line of code because ... well, you could only have so many lines! A 3.5" disk, for example, had an easily reached content limit, and once you reached that ... welp, you could go for swapping disks, which some bigger adventure games etc. did, but for most use cases that was your ceiling.

    Now ... well, who CARES if the game is 110 GB or 120 GB? Just add in some more cruft, and no need to optimize - those 5+ GHz CPUs and 64+ GB RAM before even looking at what the video card has available, that's all gonna fix your problems for you.

    • Don't forget the 45 GB [gameinfinitus.com] and 60 GB updates [essentiallysports.com].

    • by AmiMoJo ( 196126 )

      On some machines it went well beyond mere optimization. I'm not an expert on the IIgs hardware, but for example the Commodore 64 was not designed to play sound samples, but you could do it due to a glitch in the way the sound chip worked. On the Amiga, you could do a fake scaling effect by spamming the horizontal scroll register.

      Stuff that the designers never intended but people found, often by accident. That also meant that games from late in the system's life were often so far ahead of the early ones that

  • Guess you never spent time programming the //e or older ][ and ][+. Seriously, you think the gs was slow? Compared to what I started with in college (the //e), the gs was rocking.

    Always amazing how people think they're the first generation to deal with or discover things or face issues and have no clue what things were like before them.

    • Guess you never spent time programming the //e or older ][ and ][+. Seriously, you think the gs was slow? Compared to what I started with in college (the //e), the gs was rocking.

      Always amazing how people think they're the first generation to deal with or discover things or face issues and have no clue what things were like before them.

      What could do on those machines was pretty amazing with peeks and pokes and other things even in simple basic. It was amazing how much you could get done. The Apple ][GS had a color Finder before the Macintosh.

      • And HyperCard IIGS. Which was a 4-hour port from the Mac codebase.

        • by garote ( 682822 )

          Oh man Hypercard was HILARIOUS to a 15-year-old.

          You could make stuff that looked just like the official UI in GS/OS, with buttons and tabs and windows ... but the content could just be a litany of fart jokes and misdirections and terrible Deluxepaint art. I have a clear memory of having my friend Brent over for the afternoon and sitting him down in front of a Hypercard stack, then telling him it was a super cool new application and he should press the "start" button. A window appeared: "ONLY DORKS NAMED B

        • And HyperCard IIGS. Which was a 4-hour port from the Mac codebase.

          HyperCard was amazing. it’s a real shame Apple dropped it, imagine what it could have been today.

          • The ideas behind Hypercard heavily influenced the implementation of HTML, Hypertext and Javascript that powers the current form of the web we enjoy today. If Bill Atkinson had been more forward-thinking than he was at the time (making it network-aware from the start), it most likely would have been the web. Instead, it needed Tim Berners-Lee to take it that last mile.
    • I read the article differently -- a reminiscing of what they went through as teens learning computers and of how different things are today.

      I was programming in the about the same year, though I was younger. I was one of the very few kids who came into my first computer science (early 2000s) class knowing C and C++ (and Perl and Pascal) and having written actual programs in Assembly before.

      Even then, the professors were saying don't worry about optimization, compilers are so good now, speeds are improving s

      • by Megane ( 129182 )

        Today, almost everybody is programming by gluing bits of often highly optimized (but often not) libraries together.

        "Almost everybody" is programming these days in interpreted or JIT-compiled scripting languages like Python and Javascript, by gluing bits of libraries together from internet package managers line npm. These libraries are very much not optimized. Python is the new Basic, still slow, but at least you don't need line numbers anymore. Anyone using something better than that (even C#) is in the minority of humans writing code.

        • by garote ( 682822 )

          Or to put it another way: It's always been turtles all the way down, but now most people are starting 20 or 30 turtles down instead of 2 or 3.

    • Guess you never spent time programming the //e or older ][ and ][+. Seriously, you think the gs was slow?

      Yes and no. Speaking as someone who programmed games (professionally) on the //e and C64 ...

      The IIGS was faster from the game developer perspective.(*) The IIGS was slower from the user perspective due to its graphical interface, compared to the text interface of the alternatives above.

      That said, yes we had to get quite creative in our coding to keep the speed acceptable. The faster hardware was offset by the higher resolutions. But if your game supported the //e and IIGS and you were using one of th

      • by garote ( 682822 )

        That's how I remember it. Coding an arcade-style game in Hi-Res or even Double-Hi-Res - graphics modes available on the 8-bit Apple II line - was much easier on the Apple IIgs. No doubt about it.

        But if you wanted to create something that rivaled the Super Nintendo or even the 8-bit Nintendo, you had to use Super-Hi-Res, and then you had to worry about scrolling. That was where the frustration set in!

  • This article makes it sound like they knew, at the time, the challenges of coding on an Appple IIgs. Spoiler: They did not.

    Jeez. There were thousands of us at the time trying to code stuff on any of the availabe PCs at the time. I did a vertical scroller at that age for an 8088. Others had Ataris or even Commodore hardware. We had no clue about what else was out there. We just used what was available to us.

    I get the pain, I really do. But don't try to sell this up as "I got handed an Apple IIgs at that time

    • by kriston ( 7886 )

      Except for not having tile sprites, the IIgs was about as powerful as the Super Nintendo, CPU-wise, and had better sound.

      • by garote ( 682822 )

        Definitely better sound. But the SNES had a "Super PPU" chip that relieved all the burden of actually getting tiles to the screen and scrolling them. That made an enormous difference. And that was the sort of thing we were trying to compete with.

        Gaming was still (and remains) a thing on home PCs, but there was a massive explosion in console gaming going on. We didn't have the hardware, the connections, or even the documentation to develop a game for the SNES, but the Apple IIgs had really amazing techni

      • Except for not having tile sprites, the IIgs was about as powerful as the Super Nintendo, CPU-wise, and had better sound.

        With an Ensoniq Q-Chip Sampling Synth built in, I'd call that much better sound!

    • by DaPhil ( 811162 )

      I just remembered that I actually got caught in French class (I was based in Germany at that time) writing code. This must have been early 1990s.

      The teacher was pissed, I can tell you. How dare I write "stuff for your computer" in class. Well, she was right.

      I'm 44 now and still write code, so it did not hurt.

  • dunno about the rest of you, but I used the Apple IIgs and Apple Logo to control contraptions made out of lego technics series pieces.

    was a lot of fun

  • it's damn near arcade perfect, just zoomed in because of the different resolution. It's incredible what the IIGS could do. It's no wounder Jobs killed it, his crummy little Mac couldn't compete.
  • The Apple IIgs was not an upgrade in 1991, we were well into the Commodore Amiga 500, Atari ST or even PC VGA by that time. Even as a computer nerd back in the day, I really knew nobody who had an Apple IIgs.
  • Thanks, and some great insights into assembly coding in the day! Some great hacks!

  • I remember Apples were in all the high school computer labs in the 80s, and how cool the Sneakers video game was. But my dad bought a Vic 20, so I learned to program in basic with 3267 Bytes of RAM and a tape drive. Carriage returns took up memory, so you optimized by making each line of basic as long as possible and used very short line numbers. I did manage to map the computer's accessible memory to the screen with looping peeks and pokes, all 2"x2"of it, which was fun (as was randomly poking memory lo

    • Reminds me of similar tricks with Atari basic. A number took I think 2 bytes whereas a variable was 1 so any number appearing more than once got converted leaving reams of lines like Dim n1=1 total = total + n1 It also worked with gosubs so you could have gosub g1000
  • When I was a kid I wrote a little BASIC program to draw the Mandelbrodt set. Yes I know, interpreted BASIC is about the *SLOWEST* thing you could run in these machines.
    Anyhow....8 hours later it was about 3/4 done with the picture!
    6502 we love you!

  • by neoRUR ( 674398 ) on Monday March 11, 2024 @05:20PM (#64307775)

    My first computer was an Apple II+, that I worked all summer long to make the money to buy. It was great and fun to play an program. My High school had them, so I learned on there first. Then when I went off to college, someone showed me the Apple IIg, and it was cool to see the graphics on there, but I asked about games, and there were not many. Then someone showed me the Amiga 1000, and oh boy that bouncing red and white checkered 3D ball was something else, and the computer just felt nice compared to Apple, so got an Amiga 1000 and didn't look back at apple until the Smarphone. (Went from Amiga to Sun, to SGI, to PCs and a few Amigas 500,2000) But now it's all PC for some Linux and Windows.
    Ahh yes, to be a geek kid in the 80's when the computer revolution was starting, nothing else will every compare to that. These day's it will be geek kids into AI.

Thus spake the master programmer: "After three days without programming, life becomes meaningless." -- Geoffrey James, "The Tao of Programming"

Working...