Acorn Atom Systeem
Kees van Oss
Inleiding:
Ja zeker, hij bestaat nog echt: de originele Acorn Atom.
Ik denk dat ik een van de weinigen ben die nog regelmatig iets met de Atom
doet maar ik wil toch een impressie geven van wat de Atom allemaal kan. Ik
spreek wel van een 'originele' Atom, maar mijn Atom is in de loop der
jaren vele malen aangepast en uitgebreid.
Systeem:
Het systeem bestaat uit een doormidden gezaagd moederbord
waarvan het toetsenbord gedeelte in de originele (ingekorte) kast is
geplaatst en het CPU gedeelte in een oude PC kast. Dit heb ik gedaan om
wat ruimte te krijgen voor uitbreidingen. In het systeem zijn volgende
componenten terug te vinden:
-
Moederbord,
-
Toetsenbord,
-
Atom-bus, dit is een frame waarin originele Atom
uitbreidingskaarten geplaatst kunnen worden,
-
ISA-bus, dit is een print waarop connectors gemonteerd
zijn waarin originele PC-uitbreidings printen geplaatst kunnen
worden,
-
Diskdrives, 2 stuks.
-
Voeding.
Moederbord:
Op het originele moederbord zijn alleen de componenten
geplaatst welke nodig zijn. Ik heb eens ooit een kale moederbord print
gekocht en deze van begin af aan opgebouwd met alleen de noodzakelijke
componenten, geen onnodige adresdecoders voor de 2114's, geen voetjes voor
de 2114's en geen adresdecoder voor het videogeheugen. Er zijn wel een
aantal voetjes geplaatst waarin uitbreidingsprinten zoals de combiekaart,
de video-ruis onderdrukking en de hardwarepointer kaart geplaatst kunnen
worden, welke dan uit de voetjes de benodigde signalen halen. Signalen
welke niet aanwezig waren op de voetjes en toch nodig bleken te zijn, heb
ik aangesloten op pootjes van de voetjes waarvan de kopersporen
doorgekrast zijn. Hierdoor hebben de meeste printen geen draadverbindingen
en connectors welke alleen maar voor storing zorgen. Op het moederbord
zijn volgende uitbreidings printen geplaatst:
-
Video-RAM, dit is een origineel Atomclub
printje om 8 kB RAM in de plaats van de 6 kB RAM 2114's op het
moederbord te plaatsen,
-
Hardware anti-ruis onderdrukking, dit is
een printje van Peter Ehrlich welke de processor klok op de helft van de
video-processor klok laat lopen. Het voordeel is 2-zijdig, enerzijds
kunnen processor en videoprocessor zodanig gesynchroniseerd worden dat
er geen ruis meer te zien is op het scherm en anderzijds draait de
processor op 1.79 mHz ipv 1 mHz,
-
Combie-kaart, dit is een print waarop een
aantal zaken zijn geplaatst, zoals schakelkaart, geheugenkaart en
8e printerbitje,
-
Schakelkaart, er zit een 32 kB EPROM op waarin 4
boxen geplaatst zijn welke op #A000 geschakeld kunnen worden. Ook zit er
8 kB RAM op welke als 2 extra boxen op #A000 geschakeld kunnen
worden,
-
Geheugenkaart, er is een 32 kB RAM op geplaatst
welke het geheugengebied van #0000 - #7FFF dekt met battery backup,
-
8e Printerbitje, normaal print de
Atom maar 7 bits omdat het 8e bitje van de A-poort ergens
anders voor gebruikt wordt. Deze schakeling geeft het 8e
printerbitje door aan de printerpoort waardoor toch normaal geprint kan
worden.
Hardware pointer, deze print is ook eigen
fabrikaat en werkt als volgt: de print zit tussen het videogeheugen en
de videoprocessor en wanneer de videoprocessor de data uit het
videogeheugen leest, kijkt de print welk adres uitgelezen wordt. Indien
op dit adres een gedeelte van de muispointer moet staan, dan zal de
print de data zodanig bewerken dat de videoprocessor een muispointer
ziet in plaats van de originele videogeheugen data. Op het scherm
verschijnt dan een muispointer maar in het geheugen staat nog steeds de
originele data. Het printje bestaat uit 2 gedeeltes: een 'Muis-pointer'
en een 'Muis-scroll' gedeelte.
Het Muis-pointer gedeelte bestaat uit 2 ROM's waarin de
data voor 32 muispointers zit. In de ene ROM zit de 'wit' informatie en
in de andere de 'zwart' informatie. De 'wit' informatie wordt met een OR
bewerking en de 'zwart' informatie met een AND bewerking aan de
originele video data toegevoegd waardoor alleen die delen zwart en wit
worden welke in de muispointer definitie bepaald zijn.
Het Muis-scroll gedeelte bevat 2 ROM's waarin data
staat voor het verschuiven van de muispointer, 1 voor de horizontale- en
1 voor de vertikale scroll. Dit scrollen is eigenlijk niets anders dan
het manipuleren van de video adreslijnen. De videoprocessor vraagt bv.
de data van adres #8000 op maar krijgt de data van #8020. Hierdoor lijkt
het of de muispointer 1 rij omhoog geschoven is maar in werkelijkheid is
er ‘gerommeld’ met de adreslijnen. Hetzelfde geldt eigenlijk ook voor de
horizontale verschuiving maar daar moest een extra truc toegepast worden
omdat ik een bit scroll (1 pixel verschuiving) wilde en geen byte scroll
(8 pixels verschuiving). De truc is dat er 8 pointers gedefinieerd zijn
welke elk 1 pixel tov elkaar verschoven zijn en de eerste 3 adreslijnen
(8 mogelijkheden) bepalen welke pointer er getoond moet worden.
Het resultaat is een op pixel nivo bewegende
muispointer welke de op het scherm aanwezige data niet aanpast en dit
alles zonder dat er software aan te pas hoeft te komen. Het bijkomende
voordeel is dat deze actie dus ook niet snelheidsvertragend werkt.
Toetsenbord:
Het toetsenbord gedeelte wat van de moederbord print is
afgezaagd, heb ik ik de originele Atom behuizing geplaatst. Omdat de print
nu veel korter is heb ik ook de behuizing ingekort. Het toetsenbord wordt
dmv een 25 polige D-connector aangesloten op de PC kast waarin de
connector het toetsenbord doorverbind met de keybord-matrix IC's.
Atom-bus:
Dit is een klein 19" rack waarin een aantal standaard
Atom-bus uitbreidingsprinten geplaatst kunnen worden. De bus is een
verlenging van PL6/7 van de originele Atom. In het rack zijn volgende
kaarten te vinden:
-
80 Kolommen kaart, dit is de in de Atom
club ontwikkelde kaart met als videoprocessor de 9345. Hiermee heeft men
een extra 40 of 80 kolommen displaymode erbij,
-
I2C interface, dit is een eigen
ontwikkelde print waarop een I2C bus geplaatst is voor het aansturen van
diverse I2C apparatuur. De I2C bus is een door Philips ontwikkelde en
toegepaste bus welke nu nog steeds terug te vinden is TV's, video- en
audio apparatuur.
-
Muis interface, dit is een eigen
ontwikkelde print waarop 2 counters geplaatst zijn voor de X- en Y-
positie van de muis die vanuit de Atom uitgelezen kunnen worden. De muis
is een standaard Amiga muis zonder intelligentie, hieruit komen dus
alleen de puls-treinen van de opto-couplers. De interface 'kijkt' of de
muis links- of rechtsom dan wel omhoog- of omlaag beweegt en zal de
desbetreffende counter verhogen of verlagen. Ook is op de interface een
extra 8-bits buffer geplaatst waarin het nummer van het muisicoontje
(0-31) en het aan/uit zetten van de pointer bijgehouden wordt. Op de
print zit een connector waarmee de data van de counters en de 8-bits
buffer doorgegeven worden aan de hardware pointer kaart.
-
Disk controller kaart, dit is de
originele Acorn disk interface gebaseerd op de 8271. Er zijn echter wel
wat aanpassingen gedaan zoals, het verplaatsen van het I/O adres en een
'open deur' detectie welke een correcte foutmelding geeft bij een hogere
processor klok,
ISA-bus:
Dit is een uitbreiding op PL6/7 waarin standaard PC
uitbreidingskaarten zoals, een modem, seriële/parallel I/O kaart of andere
printen geplaatst kunnen worden. De PC I/O adressen van #000-#3FF worden
dan geprojecteerd in het Atom geheugen op #B400-#B7FF. De bus is 8-bits
breed en dit betekent dat alleen de oudere 8-bits kaarten op I/O nivo
aangestuurd kunnen worden. In mijn Atom heb ik de volgende kaarten getest:
-
Modem kaart, hiermee kan men een
telefonische verbinding maken met een andere PC of een internet
provider,
-
Seriële I/O kaart, hiermee krijg je een
com-poort op de Atom welke op RS232 nivo (+/- 12V) werkt en is het
eenvoudig om te communiceren met bv een PC. Ik gebruik deze print om via
een PC netwerk toegang te verkrijgen (PPP verbinding).
Diskdrives:
Dit zijn, de voor de originele Acorn diskcontroller
bedoelde, 40 tracks single sided, single density drives.
Voeding:
Ik had de standaard Atom voeding al vervangen door een PC
voeding omdat deze beter in de PC-kast pastte. Een bijkomend voordeel was
dat toen ik een ISA bus plaatste, ook de volgende voedingen al aanwezig
waren, +5V, -5V, +12V, -12V en GND.
Zo, tot zo ver een impressie van mijn systeem.
Groeten Kees van Oss |