
/*************************************************************************/
/*                                                                       */
/*                 WOM-Expansion fr Amiga 1000                          */
/*                (512KByte Kickstarts im A1000)                         */
/*                                                                       */
/*                Eine Bauanleitung von Jrg Huth                        */

                 quick english translation by judas

/*                                                                       */
/*************************************************************************/



needed parts:
----------------------

 1) 8 Stck: Speicherchips 41464 (120ns)
 2) 2 Stck: Eproms 27C256 (120ns)
            (Ersetzen die alten BootRoms im A1000)
 3) 1 Stck: 74LS32
 4) 1 Stck: 74LS74
 5) 1 Stck: 74F86
 6) 2 Stck: 74F138
 7) 8 Stck: Widerstnde 39 Ohm (1/4 Watt)
 8) 1 Stck: Widerstand 1 kOhm (1/4 Watt)
 9) 1 Stck: Leuchtdiode (3mm, gelb - die Farbe betrachte man als befohlen!)
10) 1 Stck: Schalter (1*UM)
11) 5 Stck: Abblockkondensatoren (0.1 MyFarad, keramisch)
12) 1 Stck: Elko 47 MyFarad / 16 Volt
13) Sockel fr die 74'er nach Bedarf, ein Stck Lochrasterplatine, etwas
    Schaltlitze
14) Software (Inhalt fr die Eproms) der neuen BootRoms


new kickstartdisks:
------------------


- original 256k disks should work as before.

- 512k kicks show the "f8-kick"-sequence on the first block, where normally
  "KICK" is found.


building it
------------

- if you can`t solder, let it be !

This text only descripbes the modification of the A1000 without piggy-board.

- burn the new bootroms and replace them with the original roms.

amiga must boot as before.

- build the PCB.

Apply 5V and GND to the PCB.


Nun knnen Sie die Widerstnde R119-R122 durchknipsen und damit den F139 
auer Betrieb setzen. Sie brauchen natrlich nur einen Anschlu zu durch-
trennen. Whlen Sie dabei den Anschlu, der mit dem Pin 16 der RAMs verbunden
ist. Die Widerstnde bleiben somit an dem F139 und nicht an den RAMs hngen.
Zur Not knnen die Widerstnde dann wieder relativ einfach angeltet werden.

Lten Sie nun die Ausgnge der vier 39 Ohm Widerstnde, die sich auf der
Schaltung befinden und mit 'Original' bezeichnet sind, an die RAMs. Dabei 
knnen Sie sinnvollerweise die abgeschnittenen Enden der Widerstnde auf
dem Motherboard verwenden. Jetzt kann wieder ein Test erfolgen. Der Amiga
mu ganz normal hochfahren. Wenn Sie einen Monitor zur Hand haben, knnen
Sie ja mal nachsehen, ob der Speicherbereich $fc0000-$ffffff ab $f80000
noch gespiegelt ist. Er darf es nicht mehr sein! Steht ab $f80000
ziemlicher Mist (eben ein nicht belegter Speicherbereich), so ist alles 
in Ordnung.

Bereiten Sie nun die RAM-Chips zum Auflten auf die Chips U2J-U1M des
Motherboards vor: Die Pins leicht zusammendrcken, jeweils Pin 16
abbiegen und diesen zur Hlfe abschneiden (da die RAMs nachher sehr nahe
beieinander stehen und der abgebogene Pin sonst im Wege sein wrde).

Beim Auflten der Chips gehen Sie bitte uerst sorgfltig vor. Auf der
einen Seite sollte das Zinn schon ordentlich flieen - nicht damit sparen,
sonst erhlt man spter schwierig zu lokalisierende Fehler, weil die RAMs dann
evtl. keinen guten Kontakt haben. Auf der anderen Seite drfen aber auch
keine Kurzschlsse zwischen den IC-Pins entstehen. Auerdem drfen die RAMs
auch nicht zu stark erwrmt werden, sonst werden sie zerstrt. Fazit:
Arbeiten Sie sorgfltig, nehmen Sie sich Zeit, um die RAMs immer wieder 
abkhlen zu lassen und halten Sie Entltlitze bereit, falls doch einmal ein
Kurzschlu entstehen sollte. Kontrollieren Sie alle Ltstellen peinlich
genau, und untersuchen Sie die Pins auf Kurzschlsse. Danach knnen Sie auch
die abgebogenen Pins mit den entsprechenden Widerstnden der Schaltung
verbinden. Vertauschen Sie die Verbindungen dabei nicht!  

So, jetzt ist der Umbau eigentlich beendet. Bootet der Amiga nach diesem
letzten Schritt nicht mehr, so ist davon auszugehen, da doch irgendwo
zwischen den RAM-Bausteinen ein Kurzschlu entstanden ist. Oder Sie haben
die RAMs zerbraten!

Steht der Schalter in Stellung 'Neu', so mu die Zeit zwischen dem Blinken
der Power-LED nach dem Einschalten und dem Anlaufen der Laufwerke deutlich
lnger sein sollte als vorher, da jetzt doppelt soviel WOM-Speicher
getestet werden mu. Nach der Hlfe der Zeit mssen beide LEDs (Power-LED
und die neue) eingeschaltet werden. Geschieht all dies, so knnen Sie sich
schon mal beruhigt gratulieren.


Erstellen der neuen Kickstart-Diskette:
---------------------------------------

Um Kickstart 2.0 auf ihrem A1000 fahren zu knnen, brauchen Sie jetzt
nur noch eine Kickstart-Diskette im neuen Format. Prinzipiell ist dies kein
Problem. Auf Block 0 mu der Text 'f8-KICK' stehen. In den Blocks 1 bis
einschlielich 1024 folgen dann die eigentlichen Kickstart-Daten, die 
spter ab Adresse $f80000-$ffffff abgelegt werden. Dabei wird auf Adresse
$f80000 der Code $11144ef9 erwartet. Dies ist die, von Commodore festgelegte,
Kennung fr 512KByte Kickstarts. (D.h. in 2.0 ist dies automatisch der
Fall). Auerdem mu die Checksumme ber den gesamten Bereich den Wert
$ffffffff (entspricht -1) haben.

Da auf der Kickstart 2.0 natrlich ein Copyright von Commodore liegt und
zumindest im Moment auch nur mit den 3000'ern ausgeliefert wird, darf ich
leider keine fertige Kickstart-Diskette fr 2.0 zur Verfgung stellen. Sie
brauchen also ein Kick 2.0, welches im Bereich ab $f80000 liegt und z.B.
auf einem 2000'er oder 500'er luft. Da es mittlerweile fr die 2000'er und
500'er Kickstart-Umschaltplatinen gibt, die fr 2.0 geeignet sind und somit
auf vielen 2000'er und 500'er schon Kick 2.0 installiert ist, sollte dies
aber kein unberwindliches Problem sein. Sie brauchen auf einem solchen
Rechner nur den Bereich von $f80000 - $fffffff auszulesen und
abzuspeichern. Diese File hat dann eine Lnge von genau 524288 Bytes. Mit
einem entsprechenden Tool knnen sie das File auf die Blcke 1 bis
1024 einer Diskette schreiben.

Damit die BootRoms nach einem RESET feststellen knnen, ob die Kickstart
noch in Ordnung bzw. schon geladen ist, mu die Checksume den Wert
$ffffffff haben. Stimmt dieser Wert nicht, so funktioniert zwar alles, da
die Checksumme nach dem Einlesen einer Kickstart-Diskette nicht geprft
wird, aber nur bis zum nchsten RESET. Dann meckern die BootRoms nmlich die
falsche Checksumme an und fordern zum Einlegen einer Kickstart-Diskette auf.   

Dieser Hinweis ist besonders wichtig, da die Checksumme beim 2000'er oder
500'er nicht geprft wird und deshalb meist auch nicht stimmt. Was sollte
das System beim Feststellen einer falschen Checksumme in den ROMs (bzw.
Eproms) auch machen? 

Erstellen Sie aber ruhig zunchst eine Kickstart-Diskette mit evtl.
falscher Checksumme. Mit dieser Anleitung stelle ich ein kleines Utilities 
zur Verfgung, mit dem Sie die Checksumme der Kickstart automatisch anpassen
knnen. Dieses Utilities schreibt dann auch den Wert 'f8-KICK' auf Block 0.

Auerdem mssen die RESET-Routinen des Kick 2.0 auf den A1000 angepasst
werden, sonst startet der Amiga nach einem Guru nicht mehr selbststaendig,
sondern es mte mit dem Klammergriff nachgeholfen werden. Das Utilitie
erledigt aber auch dies:

Legen Sie dazu die Kickstart-Diskette, auf die Sie auf die Blcke 1 bis 1024 
das Kick 2.0 kopiert haben, in ein Laufwerk DFX: und geben das
Kommando: AdaptKick dfX: -r -h -c
ein. AdaptKick liest dann die Kickstart-Diskette ein, adaptiert die
RESET-Routinen, berechnet die Checksumme und schreibt schlielich noch den
Header-Block auf die Disk.  
 

Erstellen der neuen Kickstart-Diskette:
---------------------------------------

Um Kickstart 2.0 oder 2.1 auf ihrem A1000 fahren zu knnen, brauchen Sie jetzt
nur noch eine Kickstart-Diskette im neuen Format. Prinzipiell ist dies kein
Problem. Auf Block 0 mu der Text 'f8-KICK' stehen. In den Blocks 1 bis
einschlielich 1024 folgen dann die eigentlichen Kickstart-Daten, die 
spter ab Adresse $f80000-$ffffff abgelegt werden. Dabei wird auf Adresse
$f80000 der Code $11144ef9 erwartet. Dies ist die, von Commodore festgelegte,
Kennung fr 512KByte Kickstarts. (D.h. in 2.0 oder 2.1 ist dies automatisch der
Fall). Die Checksumme ber den gesamten Bereich mu den Wert
$ffffffff (entspricht -1) haben.

Sie brauchen ein Kickstart 2.0 oder 2.1, welches im Bereich ab $f80000 liegt und 
z.B. auf einem 2000'er oder 500'er luffhig ist. Dazu kaufen sie sich das
Umrstkit 2.0 von Commodore. Dieses ROM, stecken Sie in einen
2000'er oder 500'er und lesen den Bereich von $f80000 - $fffffff aus und 
speichern ihn abschlieend ab. Das File hat dann eine Lnge von genau 
524288 Bytes. Mit einem entsprechenden Tool (sihe unten) 
knnen sie das File auf die Blcke 1 bis 1024 einer Diskette schreiben.

Danach mssen Sie das zu dieser Bauanleitung gehrige Utilities
Adaptkick starten, da die Checksumme der Kickstart automatisch anpat und
den Wert 'f8-KICK' auf Block 0 der Diskette schreibt.

Auerdem werden von Adaptkick die RESET-Routinen des Kick 2.0 oder 2.1
auf den A1000 angepasst. Dies ist notwendig, da der Amiga sonst nach einem Guru 
nicht mehr selbststaendig booten wrde,
sondern es mte mit dem Klammergriff nachgeholfen werden.
AdaptKick ist fr die Kickstartversionen 37.59, 37.175 und 37.210 geeignet.

Legen Sie die Kickstart-Diskette, auf die Sie auf die Blcke 1 bis 1024 
das Kick 2.0 kopiert haben, z.B. in das Laufwerk DF0: und geben das
Kommando: AdaptKick df0: -r -h -c
ein. AdaptKick liest die Kickstart-Diskette ein, adaptiert die
RESET-Routinen, berechnet die Checksumme neu und schreibt schlielich noch den
Header-Block auf die Disk.  
 

Noch einige Anmerkungen zum Schlu:
-----------------------------------

Um die Kickstart von
einem auf 2.0 umgersteten 500'er oder 2000'er auslesen zu knnen und
mit diesem File dann eine Kickstart-Diskette erzeugen zu knnen, eignet
sich das Programm 'TrackDos' von Nic Wilson. Dieses befindet sich auf der
Fish-Disk 365 von Fred Fish.
Den meisten 1000'er Besitzern ist wohl das Utilities ChangeKick bekannt,
mit dem man eine Kickstart aus dem WOM werfen kann. Die neuen BootRoms
machen ein neues ChangeKick notwendig. Dieses wird mit dieser Bauanleitung
ebenfalls zur Verfgung gestellt.  

Referenzliste benutzter Chips auf dem Mainboard:
------------------------------------------------

Wie bereits oben erwht, beziehen sich alle IC-Angaben auf den 1000'er mit
integriertem WOM. Damit Sie die entsprechenden Ltpukte auch auf anderen
1000'ern finden, hier die Beschreibung der Chips:

Referenzliste benutzter Chips auf dem Mainboard:
------------------------------------------------

Wie bereits oben erwht, beziehen sich alle IC-Angaben auf den 1000'er mit
integriertem WOM. Damit Sie die entsprechenden Ltpukte auch auf anderen
1000'ern finden, hier die Beschreibung der Chips:

U6T: CIAA (8520), ist mit den Data-Leitungen des  Centronics-Port verbunden 
U2H: F399, davon gibt es nur einen
U1R: F139, auch hiervon gibt es nur einen
U1H: F138, es gibt zwei Chips mit dieser Bezeichnung. Pin 4 ist bei beiden
           aber gleich belegt.
U2J, U1J: WOM-Speicherchips, Pin16 ist ber 39 Ohm mit Pin 5 U1R verbunden.
U2K, U1K: WOM-Speicherchips, Pin16 ist ber 39 Ohm mit Pin 7 U1R verbunden.
U2L, U1L: WOM-Speicherchips, Pin16 ist ber 39 Ohm mit Pin 11 U1R verbunden.
U2M, U1M: WOM-Speicherchips, Pin16 ist ber 39 Ohm mit Pin 9 U1R verbunden.
U5N: ROM 23256 (even)
U5S: ROM 23256 (odd)

Die Informationen in der vorliegenden Bauanleitung habe ich ohne Rcksicht 
auf einen eventuellen Patentschutz oder Copyright erstellt und sind nur fr
den privaten Gebrauch bestimmt. Warennamen werden ohne Gewhrleistung der
freien Verwendbarkeit benutzt. Ich bin beim Zusammenstellen der Anleitung 
mit grter Sorgfalt vorgegangen. Trotzdem knnen Fehler nicht vollstndig 
ausgeschlossen werden. Ich kann fr fehlerhafte Angaben und deren Folgen 
weder eine juristische Verantwortung, noch irgendeine Haftung bernehmen. 


Copyright (c) 1991 by Jrg Huth

Kaiserslautern, den 23.05.91


Meine Adresse:

Jrg Huth
Trippstadter Str. 121-1315
W-6750 Kaiserslautern
Tel: (0631) 13796 (Voice)
E-Mail: J_Huth@JoKL.ZER
	jhuth@scooter.informatik.uni-kl.de



