Zoals ik al eerder schreef is de ZX97
Lite in vele opzichten gelijk aan de ZX81 van Sinclair, waarvan er momenteel
al erg veel informatie te vinden valt op het internet. Ik heb bijvoorbeeld
ergens al eens een tekstversie van het originele ZX81 handboek gevonden.
ZX97 Lite?
Om het printontwerp te vereenvoudigen
bevat het ontwerp van de ZX97 Lite geen RAMDISK en parallele poort, wat
de volledige ZX97 wel heeft. Door deze aanpassingen was is in staat om
de gehele ZX97 Lite op een enkele printplaat te ontwerpen, daarbij gebruik
makend van een enkelzijdige printontwerp methode. De printplaat is ongeveer
15,7x18cm groot. Er zijn 24 ICs gebruikt op de printplaat en een optionele
5V spanningregelaar.
Display Type.
De ZX97 produceert net als de ZX81 een
zwart/wit beeld op een tv scherm. Ik heb twee jumpers in het ontwerp geintegreerd
waarmee het mogelijk is om de kleur van de border(kader) en de achtergrond
zelf te kiezen.(zie jumper beschrijving)
Normaal werkt de ZX97 Lite in character(karakter)
mode wat betekent dat alleen de karakters in de CHR$ set afgebeeld kunnen
worden op het scherm, echter sinds de ZX81 geintroduceerd was in de 80er
jaren zijn er diverse methodes bedacht om het toch mogelijk te maken in
hoge resolutie te kunnen werken met de ZX81. Bij deze hoge resolutie methodes
is het mogelijk elke beeldpunt op het scherm afzonderlijk aan en uit te
zetten, dus is men dan niet meer beperkt tot het afbeelden van de ZX81
karakterset. Deze methodes wekren overigens ook op de ZX97.
Tape of geen Tape?
In het originele ASCII schema van de ZX97
waren de Tape schakelingen, die nodig zijn om programma's op een cassettebandje
op te slaan middels een cassetterecorder, niet aanwezig dus heb ik de ZX81
tape schakelingen gebruikt.
Het is tevens mogelijk de tape in/uitgang
te gebruiken als een digitale seriele uitgang, wat betekent dat de filterschakelingen
voor de cassetterecorder niet nodig zijn omdat alles immers digitaal gebeurt
wat geen bandruis ed. oplevert. Als je van deze digitale methode gebruik
wilt maken kun je de filtercomponenten C5, R12(R11 dus niet!), R13, C6,
R14 en C7 weglaten. Als je dan naar het ZX97 schema kijkt zal je opvallen
dat door het weglaten van deze onderdelen er een aantal draadbruggen voor
in de plaats zal moeten worden gesoldeerd, om de 'mic' en 'ear' uitgangsconnectoren
weer met de betreffende digitale schakelingen te verbinden. De posities
waar dan draadbruggen in moeten zijn: C5/R12 en C6/R13. (deze onderdelen
staan in serie met het signaalverloop, dus...)
Als je wel van plan bent je programma's
op een bandje op te slaan middels een cassetterecorder kun je gewoon het
schema aanhouden en de betreffende onderdelen gebruiken zoals daarin beschreven.
Overigens heb ik enkele waarden van weerstanden/condensatoren uit het originele
ZX81 schema gewijzigd omdat met de onderdelen zoals in het schema van Sinclair
te grote demping van het cassette signaal optrad waardoor het volume te
laag was om mee te kunnen werken. Dit heb ik middels mijn PC en geluidskaart
gecontroleerd.
Let wel: het een en ander is zoals je
zult begrijpen sterk afhankelijk van volumeinstellingen van de cassetterecorder
voor zowel opnemen als afspelen. Het is daarom vertandig een recorder te
nemen die geen automatische volumeregeling heeft zodat je kunt experimenteren
met de voor jouw doeleinden meest geschikte instellingen. Let daarbij op
dat het volume niet te hard en niet te zacht staat bij opnemen. De opname
moet luid en duidelijk zijn, maar niet vervormd. Als je tijdens de computerdata
de ruis van het bandje kunt horen is de opname te zacht geweest.
Probeer een opname te maken die luid en
duidelijk klinkt, en ga dan met de juiste weergave instelling bezig voor
het terugladen van je testprogramma.
Ook is het natuurlijk mogelijk met de PC
soundkaart ZX81 programma's op te nemen. Gebruik dan een instelling van
11025hz bij 8 bit mono want dit produceert relatief kleine bestanden die
wel genoeg detail bevatten om de programma's terug te kunnen laden. Ook
hierbij is het volume natuurlijk even belangrijk. Daarbij komt een VU meter
op het beeldscherm van je PC natuurlijk goed uit want dan kun je makkelijk
zien of je niet te hard of te zacht opneemt. Let wel: dit is dan wel een
digitale opname, maar je hoeft hiervoor niet de genoemde onderdelen weg
te laten omdat de PC feitelijk gewoon je cassetterecorder en bandje vervangt.
Het is immers ook gewoon een audio opslagmethode.
Er kunnen trouwens problemen optreden met
onbetrouwbaarheid van het toetsenbord en het saven/laden van tape gerelateerd
aan de lengte van de aansluiting van het toetsenbord en gevoeligheid van
het digitale interface.(capacitieve belasting verandert de ingangscapaciteit)
Deze problemen kunnen opgelost worden
door de minder gevoelige 74LS245 te gebruiken voor U16, die de ingangspoort
is voor zowel het toetsenbord als het cassettesignaal.
Keyboard
Mocht je niet bekend zijn met de ZX81
hardware, het toetsenbord dat gebruikt is voor de ZX81 (en dus ook de ZX97)
is een zogenaamd matrix toetsenbord. Dat wil zeggen dat de toetsen in een
matrix vorm liggen van rijen en kolommen. Wanneer een 'rij' lijn met een
'kolom' lijn door een toets verbonden wordt, wordt dit geregistreerd door
de computer en zal de betreffende actie die bij die toetsdruk hoort plaatsvinden.
De 'rij' signalen worden aan J3 aangesloten, en de 'kolom' signalen aan
J2.
De 'rij' signalen in J3 zijn nog eens
in twee groepen van 4 signalen verdeeld die elk weer met de 5 'kolom' signalen
van J2 een blok van 4x5 toetsen vormen. De twee toetsblokken bevatten dan
een totaal van 40 toetsen. Het matrixtoetsenbord is wat duidelijker geïllustreerd
in de volgende tabel:
Blok
1 |
J2-1: |
J2-2: |
J2-3: |
J2-4: |
J2-5: |
Blok
2 |
J2-5: |
J2-4: |
J2-3: |
J2-2: |
J2-1: |
J3-4: |
1 |
2 |
3 |
4 |
5 |
J3-5: |
6 |
7 |
8 |
9 |
0 |
J3-3: |
Q |
W |
E |
R |
T |
J3-6: |
Y |
U |
I |
O |
P |
J3-2: |
A |
S |
D |
F |
G |
J3-7: |
H |
J |
K |
L |
Newline |
J3-1: |
Shift |
Z |
X |
C |
V |
J3-8: |
B |
N |
M |
. |
Space |
NB.: De meeste toetsen hebben meerdere
functies. Deze functies kunnen als volgt worden geselecteerd:
1. Shift + Toets
2. Shift + Enter: De cursor verandert
in een 'F'. Dat is de 'function mode'. In deze mode hebben de meeste
toetsen extra functies die kunnen worden gebruikt door eenvoudig de toets
in te drukken terwijl de cursor in een 'F' veranderd is. Nadat een toets
gedrukt is verandert de cursor weer van 'F' naar 'K' of 'L'.
3. Shift + 9: De cursor verandert in een
'G' wat inhoudt dat hij in de 'graphics mode' staat. Toetsen die in gedrukt
worden(letters, leestekens, enz.) terwijl de cursor een 'G' is zullen geinverteerd
verschijnen. Wanneer de shift toets wordt vastgehouden in 'graphics mode'
zullen er met sommige toetsen eenvoudige grafische symbolen op het beeldscherm
verschijnen. De 'G' cursor verandert niet vanzelf terug maar moet
teruggezet worden door nogmaals Shift + 9 in te toetsen.
4. 'K' cursor mode. Deze mode resulteert
in een 'Keyword' wanneer bepaalde toetsen worden ingedrukt.
5. 'L' cursor mode. Deze mode resulteert
in Letters wanneer de lettertoetsen worden ingedrukt. In deze mode
kun je echter nog steeds Shift-Toets en 'F' + toets gebruiken voor
het invoeren van bepaalde keywords en functies.
Let wel: De ZX97 Lite verandert
de 'K' - 'L' cursor overgang automatisch. (net als de ZX81) Bijvoorbeeld
wanneer een Keyword ingevoerd is verandert de cursor in een L zodat variabelen
en operaties etc kunnen worden getyped in paats van hele keywords.
Jumpers
J9 selecteert de border(kader) kleur en
J8 selecteert de karakterkleur, let wel dat J8 de instelling van J9 inverteert
als deze gewijzigd wordt.
Om zeker te zijn dat het beeld op de TV
zichtbaar is kun je bijvoorbeeld beide jumpers op stand 1-2 zetten. Met
bepaalde instellingen kan een TV namelijk moeilijk omgaan en moet de helderheid
van de TV helemaal naar maximum gedraaid worden om iets te kunnen zien.
Ook is het belangrijk om J11 te sluiten
bij het aanzetten want deze jumperselecteert de ZX97 ROM in het geheugengebied
van 0K-8K.
Bij het aanzetten heeft de computer de
ROM nodig in 0K-8K omdat de Z80 begint bij adres 0000h waar natuurlijk
dan geen lege RAM moet worden geadresseerd. J11 kan worden gebruikt om
een alternatief besturingssysteem in te laden in RAM in het gebied van
32K-40K (8000h-9FFFh met J11 gesloten) en dan dit RAM gebied naar 0K-8K
te verzetten door J11 te openen. Met J11 gesloten wordt het originele ZX97
ROM besturingssysteem geladen, wat overigens grotendeels gelijk is aan
de ZX81 ROM.
Het is mogelijk om een alternatief besturingssysteem
te laden in RAM geheugengebied 32K-40K, de ZX97 uit te zetten, J11 te openen
en de ZX97 weer aan te zetten met het nieuwe besturingssysteem in RAM in
0K-8K, maar dan moet de backup batterij wel worden aangesloten aan de ZX97.(wat
geen vereiste is om gewoon met de ROM te kunnen werken) Hierdoor blijft
de inhoud van de RAM chip bewaard bij het uitzetten.
De geheugentabel hieronder laat nog eens
zien hoe het zit met de verschillende geheugenopties.
Jumper J4 selecteert de TV standaard:50Hz
(PAL, bijvoorbeeld in Europa) of 60Hz. (NTSC, bijvoorbeeld in Amerika)
Geheugendecoder
De ZX97 geheugendecoder werkt als volgt
voor de verschillende geheugenblokken:
Memory-map: (=geheugenindeling)
Mem
Area: |
0000-1FFF |
2000-3FFF |
4000-5FFF |
6000-7FFF |
8000-9FFF |
A000-BFFF |
C000-DFFF |
E000-FFFF |
Normaal: |
ROM |
RAM |
RAM |
RAM |
RAM |
ROM |
ROM |
ROM |
/M1
laag: |
ROM |
RAM |
RAM |
RAM |
RAM |
ROM |
RAM* |
RAM* |
J11
Open: |
RAM** |
RAM |
RAM |
RAM |
ROM** |
ROM |
ROM |
ROM |
* terwijl /M1 laag is, en bepaalde andere
signaalvoorwaarden gelden, wordt DFILE(nodig voor het afbeelden van de
schermdata) uit RAM geladen, en wordt de geheugentoegang
in gebied C000h-CFFFh door de geheugendecoder
naar het 4000h-7FFFh geheugengebied omgeleid.
** deze geheugenblokken zijn verwisseld
ten opzichte van de 'Normale' situatie in
de tabel. (zie paragraaf over jumpers)
ZX97 BASIC Keywords
Ik zal een scan van het ZX81 toetsenbord
toevoegen zodra ik een goed exemplaar heb. Daarop kun je de meeste functies
zien van de ZX81 die ook op de ZX97 werken.
Er zijn nog een aantal ZX97 specifieke
functies die de speciale ZX97 opties activeren. Ik zal in een latere update
daarover meer uitleggen.
PCB Layout?
De PCB layout is een zeer groot PCX 1bit
bitmap bestand. Om wat ruimte te besparen heb ik besloten om deze grote
files niet op de website te zetten. In plaats daarvan kun je me emailen
en om de betreffende file vragen. (vermeld dan wel duidelijk om welk ontwerp
het gaat) Ik zal dan zou spoedig mogelijk antwoorden via email met het
bestand in een aatachment. Als je een of andere bijzondere methode gebruikt
om internet pagina's op te halen of problemen hebt met grote attachments(ongeveer
200K) kun je me altijd schrijven. Dan kunnen we misschien een oplossing
bespreken. Dat moet in elk geval vast wel lukken.
Met vragen kun je bij me terecht via email.
Deze
homepage kan het beste bekeken worden met Netscape.
Laatste update 03-02-2000 |