Freitag, 5. August 2011

Computers and me: first contact (some observations)

I am currently starting to use Google+. And this will influence my view on certain things (see last post, unfortunately only in German). As I did not really use Facebook, StudiVZ, MySpace, Twitter, etc. before I hope to learn how views change by introspection: writing down some inventory of opinions and feelings now and looking back to this after some months of Google+ usage.

It will take a number of blog posts to do so as I want to look back to my personal early computer history, so the first posts will not be close to the topic of social networks.

In this post I give some background about my history regarding computers and the internet, starting back in the eightees. So this post will not have anything to do with modern digital social networks but only some computing memories from former days.

First computers at school

We had some Siemens boxes (PC-16/10 and PC-16/11) at school running Concurrent CP/M-86, and there we created our very first network: For some reason the computers had differently formatted floppies (I do not remember why) and it was difficult to transfer data from one kind to the other. Therefore one of us connected two pins of the printer ports by cable and we wrote our first transfer programs (one side in BASIC, the other side in Pascal, as we could not transfer the transfer program itself and did not want to type the same program a second time).

Concurrent CP/M-86 allowed to switch between four different consoles on one computer (like Ctrl+Alt+F1 to Ctrl+Alt+F4 on a Linux box), i.e. to run four sessions in parallel where each session could have one running program. I think we never used this for something useful.

But we started writing our own games. The boxes had a text mode graphic card, 80x25 cells holding one byte (ASCII character) each. Writing directly to this memory changed the character displayed at this position. The interesting part was that you also had access to the character bitmap memory holding the graphical representation of each character.  Changing this representation immediately had effect on the display, all occurrences of the character on screen were directly effected. You could do nifty things with this. This gave the first pacman and other »graphical« games.

I spent a lot of time in the computer room these days.

And we were really lucky to have one of the first teachers who had real informatics (computer science) lessons at university and knew what she had to teach us. She was a women and we all really loved her.

...and at home

The father of a good friend worked as a programmer at Nixdorf and my friend got a C64 as a gift. We played lots of games on this box and even started some programming. My parents noticed how interested I was and decided to make me a big gift: my first computer. It was a Schneider Joyce (the German brand name for the Amstrad PCW 8256) with 3" (sic!) disk drive and printer with two operating systems: the integrated text processing environment LocoScript and CP/M+ with Mallard Basic and DR-Logo. Later I also got Turbo Pascal.

It was not really compatible to the Schneider CPC (Amstrad CPC) series my schoolmates had at home. They used the same disks and could boot CP/M2.2 but most of the CPC programs, especially the games, were not working (besides some great Infocom text adventures running on CP/M). My father thought it would be a good idea to give me a computer where no games are available for. He was right in one point: I quickly learned how to write my own games. On the other hand I did not have anyone to discuss specific problems, was somehow on my own.

Z80 assembler

The Z80 processor is able to address 64kB (sic!) of memory and the PCW8256 had 256kB of memory. To access the whole memory range bankswitching was used (at this time there was no virtual memory etc.). The 64kB were organized in four slices of 16kB each. The uppermost segment held parts of the CP/M (3kB of it). So a program had 61kB of memory available, the rest was usually used as a large ramdisk. At this time the video memory of home computers often was part of the main memory and you could write on the screen by simply writing to memory. This was not possible with the Joyce, normally the video ram was not switched in.

Nearly any assembler tutorial I got hands on in these days started with some small example program writing some bytes to video memory. If some pattern appeared at the screen you knew you did everything right. Not for me, there was no video memory to write to. It took me a long time to find out that there are OS routines which I can call to display something on the screen, and how to call them (I did not have access to many documents in these pre-internet times), and even longer (including lots of reboots) to learn how to switch chunks of memory in and out without switching the running program away.

The Rodnay Zaks »Programmierung des Z80« book (in German, published by Sybex; original title »Programming the Z80«) is one of the few computer related books I still have on the bookshelf from these times.

Henry says he has WLAN. He is way too young for all this old stuff.

Keine Kommentare:

Kommentar veröffentlichen