Wednesday, 28 September 2022

8-bit beliefs

ZX Spectrum and Commodore 64 were all the rage. Information was not easily available, was in the wrong language, and most importantly I was a kid and had little patience for learning anything.

*

After writing the PRINT "Hello" example from ZX Spectrum manual, I thought the "Hello" on screen was some kind of intelligent response on part of the computer. I think I had a goosebumps moment, and reported this finding to my dad, who to my embarrassment corrected me.


I don't know why I was so sure all BASIC languages were same. I had gained some reputation as a programmer, getting things move on Spectrum screen with key presses. However, when I needed to demonstrate this ability on a friend's Commodore 64, I quickly found out it doesn't understand the PRINT AT x,y construct or the INKEY$ statement, both central to the program. I guess my reputation diminished at that point.

We also enthused about a MikroBITTI magazine article on writing adventure games. I think I knew better already, but somehow we hyped ourselves into believing the descriptions inside the PRINT statements would translate into fantastic animated graphics, sword fights etc. Next day my friend informed me with sage authority that this would not in fact happen.


Although I wrote a few type-in games from magazines, typing was infinitely boring. I had a habit of RUNning the game before the listing was complete, in order to see at least something happening on the screen, as if "half a game" could already be experienced. In some cases something interesting might happen, but it could just as well result in a crash, losing even the little amount that had been typed.

There was a time when I thought the English alphabet is ordered QWERTYUIOPASDFGHJKLZXCVBNM. Because why else would the keyboards be in this order?

Briefly I also had this idea that all computers came from "England", where ever that might be. Soon I knew they also came from USA and Japan. For years, Clive Sinclair was the only "computer genius" I knew by name, and I also thought Sinclair QL must be some kind of ultimate super computer. I guess Jack Tramiel was next but I had less definite idea of his achievements.


Slightly later:

As mentioned, I could do simple BASIC games with moving graphics. However, these tended to be jerky and flickering, based on PRINT AT y,x;"@" and LET x=x+1 statements. This way game elements moved one character at time.

At school, perhaps even during math class, I came up with an innovation: what if I used LET x=x+0.1 instead?! Surely the graphics would move smoothly! I could barely concentrate on the classes at all, and nearly ran to home just to test this hypothesis. I was disappointed. Yes, the character moved more slowly, but still at 8-pixel chunks.


Machine Code was really the final frontier. The ZX Spectrum manual listed all the Z80 Machine Code opcodes, but I couldn't find anything about what they do and how they are fed into the computer. I didn't see the connection between these and the way some BASIC listings used READ/POKE to fill in memory space with machine code.

Obviously they could not be typed directly into a listing, because the Spectrum prevents from typing nonsense. I tried creatively adding these commands after REM statements, because that at least was possible. Of course, nothing happened.

3 comments:

  1. Yeah, the lack of a PLOT command was one of the biggest shockers for me, upon moving from the Timex-Sinclair to the C64 -- especially when the latter had an even bigger character set to account for every 4x4 pixel 'point' variation. But then the Commie had always deserved a far better version of BASIC where graphics were concerned, anyway.

    Heh, my own notion/delusion then was that everything of a graphical nature (even the flashiest commercial games) *obviously* had to be drawn beforehand on graph paper first, and then tediously converted to values to be (even more tediously) entered into the computer... ugh.

    (Though if memory serves, the programmers of Impossible Mission and Karateka did indeed work that way, hand-digitizing Muybridge photos for their animated sprites.)

    ReplyDelete
  2. Some more beliefs (mine and friends') from back in the day:

    - An integrated tape drive is faster than an external one
    - MikroBITTI called C a fast and professional language, so I thought it would make graphics code run smooth automatically
    - If you mistyped anything when loading a C64 game, better reboot the machine
    - The Adlib has more channels than the Amiga, so it must sound better
    - Playing too much videogames will ruin a TV set

    ReplyDelete
    Replies
    1. Early MikroBITTI probably had a lot of BS about programming languages. Spectrum FORTH was said to be suitable for making games and "screen animation". Possibly because it was "10 times faster" than BASIC.

      Delete