[ index ]
my life through computers
. 1982, zx81
. 1987, 8086
. 1993, macintosh lc iii
. 1996, powerbook 190
. 1998, powerbook g3
. 2000, pentium iii 667eb
. 2001, thinkpad a20m
. 2002, ibook 2
. 2002, epia-m
. 2002, ss51g
. 2003, thinkpad x30
. 2006, soekris 4801
1982, sinclair zx81
all started with a small computer i found on garbage. it was a zx81 with
1 kb of ram, a cable to link it to the tv. it was powered with a 3.25 mhz
zilog z80a processor, and its available memory was around 700 to 800 bytes
since a part of it was used by the machine so it would work properly. display
required a tv and was 32x24 characters. my parents did not like when i used
it, because it required the only tv we had and they were afraid the computer
could damage it (and we had no money to buy another one!). i started with
basic and i have kept that machine religiously up to today, and it's in
perfect condition. i could not believe someone had sent that machine to the
trash ! i was 8 years old (: (the zx81 is dated 1981, so i believe the
previous owner kept it for a year before i got it)
the machine weights less than 400 grams, and it had a 8 kb basic. the keyboard
is a bit strange as it's a flat one, with 40 keys and some also act as
functions or special characters: 20 graphical ones and 54 inverse characters.
it had two display modes, the 32x24 characters one and a graphical one with
64x44 pixels, and two modes : fast and slow. fast could be used to get max
speed from the machine (but graphic output was horrible and out of sync)
while slow could be used for standard use. using FAST made it go 4 times
the zx81 only uses four chips which is quite interesting from a hacker's
point of view. the first one is the cpu, a zilog z08a which does arithmetico
and control, a 8 kb rom (with operating system, mainly the sinclair basic),
1 kb ram and a SCL : "sinclair computer logic" which took care of everything
after a few monthes, i found a book that teached assembly programming for
the zx81 so i went for it. the system reserved bytes 16384 to 16508 for
its own use, the so-called "system variables". a small basic program was
used to enter the assembly code i wrote and it was just wonderful to spend
time writing code then typing it and watching it just work (:
that machine was the third one from sinclair. it could be ordered in two
versions: the traditional self-assembly (you can buy original boxes today
of those kits for 100 $ !) and an assembled one. the power of the machine
is very small with only 1 kb ram and no color nor sound but for that date,
1981, it was cheap enough so people could buy it : by 1982 over 300,000 of
those had been sold. back in 1981, it was pretty hard to find any computer
store and a british magazine, W.H. Smith, decided to stock ZX81 in selected
stores to sell them, putting ads around. the response was quite incredible
and sinclair had to build over 40000 machines per month in 1982 and they
could not even keep up with people's demand.
even today i still remember the first program i typed from a book, to draw
a sinusoidal form on screen. the most memorable moment was when i read about
gary keall's hack: he had found how the zx81 generated its video signal and
designed hardware to replace a section of the zx81 rom with its own 2 kb
graphic rom, so we could have 256x192 pixels on tv ! his assembly code was
also very advanced and full of tricks and some features like triangle filling
were not even available on later machines like the acorn atom or the bbc
1987, intel 8086
my next computer only came five years later and it had been more harder to get.
my friends around had 286 machines and one had a new 386 one with the ega
graphics. someone one stair above our flat had an amstrad pc1512 and from time
to time i could use it, mostly to play ega games i could borrow from friends.
when he moved to 386 he proposed to sell his 8086 to us and my mother accepted
though it took her over one year of work to pay it fully :/ the screen had
4 levels of gray but worked like a cga, processor was a 8086 (an improved
version of the intel 8088) and 512 kbytes of memory, with no hard-disk but
two 360 kbyte 5"1/4 drives. another computer, another british one :o)
that machine had been started in 1986 but i only got it in 1987, which is not
that bad, the first XT PC having been introduced in the early 1983 with the
IBM PC XT - Model 5160. the 286 was available since 1986 but IBM did less
than 20,000 of those and quickly introduced the PC AT in 1984 (still a 286).
while this was a cheap computer, it was rather complete and had some cool
stuff like cp/m floppy :) the power supply was inside the display and it used
an "enhanced cga mode" as amstrad called it, mainly a 640x200 at 16 grays.
it has a ms-dos 3.2 floppy, DR-DOS plus 1.2 (from digital research), CP/M,
GEM (the graphic interface which was the same as found in the Atari ST)
and a mouse !
my friends gave me a few games that accepted to work there like rick dangerous
or space harrier! one week end my father told me he had seen some kind of
computer store in the "puces de clignancourt" so i went there with him and i
found, for 300 francs or so (about all my savings at that young age) a book
with a floppy : borland turbo pascal 3.0 ! (:
i came home with the book and from there, i never played with the pc again.
when i went to the pc, i first started with ed (yes. the ms-dos ed editor!)
that i learned without any doc and debug which i used to hack and code.
pctools was a very valuable tool at that time since it allowed me to change
C strings in binaries without having to disassemble them first and my first
hacks were pretty lame and pctools editing based. but going on with the turbo
pascal was incredible: it was a single 63 kb binary and it contained a
word-star like editor, compiler and linker and could produce .com programs
(64 kb max), .exe programs and even libraries and plenty incredible stuff !
my use of the pc became gradual and annoyed my parents because it slowly
jeopardized my school results and definitively killed any social life since.
i was mostly interested by code itself, no programs and what they could do.
so my first program was an implementation of CRC32. once done, i created
another program to calculate CRC32 checksums of my programs, and append the
CRC32 to the slack part of the executable file. since sectors were a few
kilobytes on disks, the last sector for each file was usually not totally
used, but all copy operations also copied the non-used part at the end of
each file, so called the "file slack" and that's were i did put my CRC32.
then my binaries were able to read their last sector and check if they had
been tampered with :) (i learned of virii later but their assembly was a
bit hard for me)
and i continued using that 8086 for years. i had found a company in the US
that sold 360 kbyte shareware disks with various themes. so i bought a few
from them each month: a C compiler with compiler/linker that i had to call
separately, using the turbo pascal 3.0 text editor to write my c code. on
a library in my town they also had the K&R book in first edition and i
learned from it. at that time, my friends had their atari and it was cool
to play games over it but the day i saw an amiga the music from it was just
incredible. but lack of money made me keep with the 8086 because i could
not afford anything else.
[ next page ]
last update: Mon Apr 5 20:50:43 UTC 2004