1.Allgemeines 2.1. Einfuehrung Um TurboProcess zu entwickeln, mussten wir sogenannte 2-Mann-Jahre Grundlagen- forschung betreiben, denn wir wollten nicht den einfachen Weg gehen, sondern das fast unmoeglich erscheinende reali- sieren: ein Geraet, das den C64 4-fach beschleunigt und das einfach in den Expansionsport gesteckt wird und dann funktioniert. Erst waehrend der ganzen Entwicklungs- zeit konnten wir erkennen, dass C64 nicht gleich C64 ist: es gibt eine Menge unterschiedlicher Geraete mit un- terschiedlichem Timing-Verhalten in gleichem Gehaeuse: z.B. verhaelt sich ein in England gebautes Geraet anders als ein in den USA gefertigter Com- puter. Sie koennen sich vorstellen, welche Probleme waehrend der Entwick- lungszeit aufgetaucht sind und wieviel Muehe und Zeit es gekostet hat, dieses Problem in den Griff zu bekommen: 2 Einstellregler, mit denen man TurboProcess an Ihren Rechner anpassen kann. Wie Sie sich sicherlich vorstellen koen- nen, ist diese Erfindung nicht nur fuer unsere Kunden von Interesse, sondern auch fuer die Personen, die gerne auf die leichte Art von unserer Arbeit pro- fitieren moechten: die sogenannten Nach- bauer im Sinne von Abkupfern. Obwohl unsere Entwicklung sehr schwierig zu kopieren ist, wollten wir solchen ge- werblichen Nachbauern das Leben etwas schwerer machen: wir haben die Bezeich- nungen der IC's abgeschliffen. Wir bit- ten um Ihr Verstaendnis, da wir sehr viel Zeit und Geld in die Entwicklung gesteckt haben. Wir moechten Ihnen schliesslich bald wieder eine Sensation vorstellen koennen. 2.2. Lieferumfang Bitte ueberpruefen Sie den Inhalt Ihres Paketes auf Vollstaendigkeit. Auch dem gewissenhaftesten Verpacker kann einmal ein Versehen passieren: ---Platine TurboProcess ---Manual 2. Uebersicht der Supportelemente 2.1. P1 Potentiometer zur Synchronisation der Bildschirmausgabe von TurboProcess mit dem C64. 2.2. P2 Potentiometer zur Taktsynchronisation von TurboProcess mit dem C64. 2.3. P3 Potentiometer zur Geschwindigkeitsre- gelung zwischen 100 Khz und 3,2 Mhz. 2.4. 8-Dip-Switch Der 8-Dip Switch uebernimmt saemtliche Einstell- und Auswahlfunktionen. 2.5. Ttaster T1 T1 ist der Resettaster. 3. Features des TurboProcess Wir gratulieren Ihnen zum Kauf einer der besten Hardware-Erweiterungen, die es fur den C-64 und PC 128 gibt. Mit TurboProcess machen Sie aus Ihrem Rech- ner einen der leistungsfaehigsten Home- Computer der Gegenwart. Mit TurboProcess erhalten Sie erstmals die Moglichkeit, die Geschwindigkeit Ihres Rechners selbst zu bestimmen: 4-fache Geschwindigkeit bis zum Schneckentempo (1/10) Die quaelend langsame Berechnungen Ihrer Buchhaltungs- oder Tabellenkal- kulationsprogramme werden mit der 4-fachen Rechengeschwindigkeit rasend- schnell, sodass Sie Ihren C64 oekono- misch auch im professionellen Sinne einsetzen konnen. Auf der anderen Seite werden Sie auch auf der Ebene der Spiele anderen voraus sein, da Sie neue oder schwierige Action-Spiele durch die Moglichkeit der Reduktion der Geschwindigkeit bis zum Schneckentempo sofort im Griff haben werden. Kein High-Score wird mehr vor Ihnen sicher sein. 3.1. Rambereich Auf der Platine befindet sich ein kom- pletter C64 mit 64 kByte Ram, den TurboProcess Ihnen leider nicht als zu- saetzliches Ram zur Verfuegung stellen kann, sondern zur Simulation des C64 benoetigt. Bezueglich einer Ramerweiterung beach- ten Sie bitte das Kapitel Zukunfts- musik. TurboProcess unterscheidet sich in der Funktion nur bezueglich des I/O-Bereich von einem normalen C64. 3.2.Akkupufferung Wir haben TurboProcess mit CMos-IC's bestuckt, soda TurboProcess nicht nur wenig Strom verbraucht, sondern darue- berhinaus noch das Ram akkugepuffert ist. Das bedeutet: selbst bei Stromaus- fall haben Sie keinen Datenverlust. So konnen Sie Ihre Arbeit unterbrechen und spaeter nach Einschalten des Gerae- tes direkt weiterarbeiten. 3.3.65816 CPU Das Gehirn des Computers ist die soge- nannte CPU (Central Processing Unit). Wir benutzen fur TurboProcess die 65816. Diese CPU hat 2 Modi: 3.3.1. Simulation der 6502/6510 Sie kann die 6502 bzw. 6510 simulieren, d.h. die CPU des C64. 3.3.2. 16-Bit Betrieb Sie kann auf 16-Bit-Betrieb umgeschal- tet werden. Wenn Sie in Maschinenspra- che programmieren wollen konnen Sie fuer Ihren (Unter)Programme (immer mit SEI beginne0) die volle Leistungs- faehigkeit dieser CPU ausnutzen mit: - 16 Bit Indexregister - maechtige neue Adressierungsarten - Block-Hove-Befehlsmoglichkeit - Direktadressierung von bis zu 16MByte Speicher. Eine entsprechende Speichererweiterung werden wir in Kuerze anbieten. Da eine Beschreibung der Programmiermoglichkeit dieser CPU bereits Buchcharakter von ueber 600 Seiten annimmt, mochten wir uns der Hilfe versierter Kenner versichern und Ihnen im Anhang einige Literaturhinweise geben. 4.Kompatibilitaet Grundsaetzlich funktionieren alle Pro- gramme, die auf Ihrem Rechner laufen auch mit TurboProcess. Wir haben Ihnen nunmehr die uns bekannten Ausnahmen, die grundsaetzlich auch Ihren Rechner betreffen koennen, dargestellt: 4.1. Soundchip und TurboProcess Grundsaetzlich laufen also alle Pro- gramme schneller, bis auf die Ausnahme: Immer wenn auf den I/O Bereich zuge- griffen wird, schaltet sich TurboProcess aus Kompatibilitaetsgruen- den auf 1MHz zurueck. Dies geschieht aus gutem Grunde: der Anwender moechte seinen Sound sicherlich nicht viermal schneller hoeren. 4.2. VIC und CIA VIC und CIA laufen ebenfalls weiterhin auf 1 MHz. Bei dem VIC ist die Hochtak- tung technisch unmoeglich. Die CIA's auf 4 MHz zu takten ist nicht sinnvoll, denn die interne Uhr und der zyklische Interrupt sollten sich natuerlich nicht veraendern. 4.3. Illegal Opcodes Illegal Opcodes sind Befehle, die die 6502 oder 6510 CPU Ihres Rechners ei- gentlich nicht kennt und die vom Her- steller der CPU's nicht garantiert wer- den. Das bedeutet, dass Programme, die mit Illegal Opcodes programmiert worden sind, auch nicht unbedingt auf Ihrem Rechner im Originalzustand funktionie- ren muessen. Die CPU 65816, die bei TurboProcess verwendet wird, kennt sol- che Illegaln Opcodes nicht; deshalb koennen solche Programme nicht mit TurboProcess laufen. Zur Beruhigung sei gesagt, dass es nur wenige Programme gibt, die diese Illegal Opcodes benut- zen. Standard-Programme wie Superbase, Vizawrite, Multiplan etc. ... benutzen solche nicht garantiertn Befehle selbstverstaendlich nicht. 4.4. Spiele und TurboProcess Es gibt einige wenige Spiele, die der- art viele Veraenderungen im Videobe- reich vornehmen, dass es Probleme mit dem einen oder anderen Sprite geben kann. Sollte es fuer Sie wichtig sein, dass auch diese Spiele laufen, koennen Sie mit 3 Kabeln eine absolute Kompati- bilitaet bzgl. des Videobereiches herstellen. 4.5. Problemloesungen Im Anhang finden Sie eine Risszeichnung von TurboProcess, bitte nehmen Sie die- se noetigenfalls zur Hand. Darueberhinaus benoetigen Sie ein 3-pol. Flachbandkabel. Auf TurboProcess finden Sie rechts die 3polige Stiftleiste SL2. Wenn man den Pin, der am naechsten zur 40-poligen CPU 65816 zeigt, mit Pin 8 beziffert, so ergeben sich folgende Verbindungen zur PLA, die mit Kabeln herstellt wer- den muessen: --------------------------------------- Tabelle 1: SL2 zur PLA --------------------------------------- Sl2 PLA Bedeutung Pin8 Pin8 LORAM Pin7 Pin7 HIRAM Pin6 Pin6 CHAREm --------------------------------------- Damit TurboProcess auf diese Aenderung reagiert, muss auch TurboProcess geaen- dert werden. Auf der Platine finden Sie direkt un- terhalb des Dip-Schalters S1 ein 20-poliges IC. Pin 14 dieses IC's ist auf der Loetseite mit +5 Volt verbun- den. Diese Loetbruecke muss geoeffnet werden und PIN 14 mit der Masseleitung (z.B. Pin 10 dieses IC's) verbunden werden. Sollten Sie sich diesen kleinen Ein- griff nicht zutrauen, wenden Sie sich bitte an Ihren Commodore-Fachhaendler. 5. Zukunftsmusik Wenn Sie Soft- und/ oder Hardware fuer TurboProcess entwickelt haben oder ent- wickeln wollen, setzen Sie sich mit uns in Verbindung, denn wir haben immer Interesse daran, unsere Produktpalette zu erweitern bzw. unsere Kunden ueber solche Entwicklungen zu informieren. Aus unserem Hause sind folgende Erwei- terungen geplant: - 256 KByte CMOS- Ram Speichererweite- rung akkugepuffert - 1 MByte dynamische Ram Speichererwei- terung 6. Inbetriebnahme Nehmen Sie sich zur Verdeutlichung die Risszeichnung von TurboProcess zur Hand. Wegen der oben angedeuteten Probleme mit dem Timing-Verhalten einiger Rech- ner haben wir die wichtigsten Steuer- leitungen regelbar gemacht, d.h. am Anfang muessen Sie die Grundeinstellung von TurboProcess vornehmen, falls eine Anpassung notwendig sein sollte. Rechner ausschalten 6.1. Grundeinstellung Potentiometer P1 und P2 bei TurboProcess muessen rechtsherum bis zum rechten Anschlag zur Grundeinstel- lung gedreht werden. Dip-Schalter 1 AUS (OFF) stellen Je nach Hersteller eines Schalters ist die DIP-Schalterstellung oben oder un- ten. Da dies unterschiedlich sein kann, muessen wir Sie leider gezwungener- massen um Ausprobieren bitten. Meistens ist eine Schalterposition mit OFF (AUS) oder ON (EIN) gekennzeichnet. Einstecken von TurboProcess in den Expansionsport Ihres Rechners. 6.2. Einschalten 6.2.1. Rechner einschalten Ihr Rechner sollte sich nunmehr mit dem gewohnten Einschaltbild melden. 6.2.2. Grundeinstellung der Switches Nachdem Sie die DIP-Schalter wie folgt eingestellt haben, schalten Sie TurboProcess ein: DIP 1...2...3...4...5...6...7...8     ON     ON      ON      ON        OFF     OFF     OFF     OFF 6.3. Einschaltmeldung TurboProcess Mit dem Einschalten greift TurboProcess auf sein eigenes Betriebssystem zu. Dies hindert Sie jedoch nicht daran, Ihr bisheriges Betriebssystem weiter benutzen. Sie brauchen sich nur Ihr bisheriges Betriebssystem in das TurboProcess Eprom zu brennen. TurboProcess meldet sich folglich ent- weder mit dem Betriebssystem TurboProcess SYSTEM 3 (UP) (parallel Datenuebertragung ueber den USER-Port zur Floppy mit entsprechender Hardware- Erweiterung aus unserem Hause) oder mit dem auf TurboProcess angepassten Original-Betriebssystem des C64, allerdings mit veraenderten Einschalt- farben. 6.4. Bedeutung der DIP-Switches 6.4.1. Switch 1 Schalter TurboProcess ein/aus. 6.4.2. Switch 2 In Position ON kann man die Geschwin- digkeit von TurboProcess zwischen ca. 100 kHz und 3,2 MHz mit dem Poti 3 einstellen. Hierfuer muss TurboProcess mit den DIP-Switches 7 und 8 auf 4 MHz eingestellt sein. 6.4.3. Switch 3 Auf TurboProcess befindet sich ein 32 KByte Eprom mit verschiedenen Betriebs- systemen. Wenn Sie weitere Betriebs- systeme wuenschen, koennen Sie anstatt eines 32 KByte Eprom ein 64 KByte Eprom des Typs 27512 verwenden und mit dem Switch 3 auswaehlen, welche der beiden 32 KByte-Haelften Sie ansprechen moech- ten. Bei der Auswahl des Eproms 27512 achten Sie bitte darauf, dass das Eprom eine Zugriffsgeschwindigkeit von min- destens 150 ns hat. 6.4.4. Switch 4 Befindet sich in diesem Eprom ein 16KByte Modul-Programm - z.B. unser Assembler AS64 - so kann dieses durch Umlegen von Switch 4 in die Position ON eingeschaltet werden. 6.4.5. Switch 5 Mit diesem Schalter kann absturzfrei zwischen 2 sich eventuell im Eprom be- findlichen Betriebssystemen umgeschal- tet werden. 6.4.6.Switch 6 TurboProcess kann auch asynchron zum C64 betrieben werden, wobei jedoch kei- ne Ein/Ausgaben moeglich ist. Im asynchronen Modus ist TurboProcess nochmals ca. 10-20% schneller. Dieser Modus eignet sich also besonders fuer langwierige Berechnungen. Wird Switch 6 eingeschaltet, so kann man softwaremaessig zwischen dem synchronen und asynchronen Modus hin- und her- schalten, indem man Bit 6 der Adresse $0001 setzt oder loescht. Dies sollte aber dem erfahrenen Maschinenprogram- mierer vorbehalten sein, da durch un- sachgemaesse Bit-Aenderung der Adresse $0001 der Rechner leicht abstuerzen kann; man sollte also nicht irgend- welche Werte in diese Adresse schreiben sondern gezielt mit AND und OR einzelne Bits setzen. Zur weiteren Geschwindig- keitserhoehung empfiehlt es sich, vor dem Umschalten in den asynchronen Modus den Interrupt mit SEI zu sperren und nach dem zurueckschalten auf den synchronen Modus den Interrupt wieder mit CLI freizugeben. 6.4.7. Switch 7 Ist dieser Schalter geschlossen, so wird durch Setzen und Loeschen von Bit 7 der Adresse $0001 softwaremaessig zwischen 1MHz und 4MHz umgeschaltet. Bei geoeffnetem Schalter 7 erfolgt die Umschaltung zwischen 1 MHz und 4 MHz hardwaremaessig mit Schalter 8, damit auch die Programme schneller laufen koennen, die nicht einzelne Bits der Adresse $0001 setzen oder loeschen son- dern einfach direkt irgendwelche Werte in diese Adresse schreiben. 6.4.8. Switch 8 Ist dieser Schalter in Position OFF so laeuft TurboProcess auf 4MHz. Da der serielle IEC-Bus des C64 nicht auf 4 MHz funktioniert, muss vor dem Laden, Speichern etc.. immer auf 1 MHz zurueckgeschaltet werden. Die beiden mitgelieferten Betriebssysteme tun dies automatisch wenn die Switches 7 und 8 entsprechendcgesetzt sind, wobei in der folgenden Tabelle ein + bedeutet, dass auf dem seriellen IEC-Bus zugegriffen werden kann. DIP-Switch 7 8 - OFF OFF hardwaremaessig auf 4MHz + OFF ON hardwaremaessig auf 1MHz - ON OFF hardwaremaessig auf 4MHz + ON ON softwaremaessig auf 1/4MHz 7. Anpassung von TurboProcess Wegen der bereits erlaeuterten Timing- Probleme der sehr unterschiedlichen Rechner kann es vorkommen, dass sich TurboProcess einmal nicht sofort mit einem einwandfreien Bild meldet. Die- sem Problem haben wir mit umfangreichen Einstellmoeglichkeiten Rechnung getra- gen. Gehen Sie bitte wie folgt vor: 7.1. Keine Meldung des Rechners Drehen Sie das Poti P2 feinfuehlig etwas nach links und druecken die Re- settaste T1. Wiederholen Sie diesen Vorgang - immer ein wenig weiter nach links drehend- bis sich der Rechner meldet. Wichtig: Bitte wirklich feinfuehlig drehen. 7.2.Grafikzeichen auf dem Rechner Es kann sein, dass zufaellige Grafik- zeichen auf dem Bildschirm erscheinen. Zur Abhilfe drehen Sie bitte Poti P1 ebenfalls feinfuehlig etwas nach links und druecken die Resettaste T1. Auch dieser Vorgang wird wiederholt, bis der Bildschirm frei von irgendwel- chen Stoerungen ist. 7.3. Dot Clock-Problematik Bei aelteren C64 kann es durch eine Serie von bedingt fehlerhaften Video- kontrollern 6569 R1 (Revision 1) geschehen, dass bei Verwendung von TurboProcess die unterschiedlichsten Grafikzeichen auf den Bildschirm er- scheinen, die auch nicht mit dem Poti P1 wegzuregeln sind. 7.3.1. Zur Verdeutlichung fuer Interes- sierte: Der VIC erzeugt aus der 8 MHz Dot-Clock die 1MHz CPU-Clock, wobei unter ganz bestimmten Voraussetzungen Stoerungen auftreten und die CPU-Clock kurzzeitig keine exakte Untermenge der Dot-Clock ist. Dies stoert den C-64 nicht weiter, aber da das Timing von TurboProcess exakt stimmen muss, kann es hierbei zu Stoerungen kommen. 7.3.2. Problemloesungen Bevor man den Austausch des vergleichs- weise teuren VIC gegen einen 6569 R3 oder R5 plant, sollte man folgende Ver- aenderung vornehmen, denn oft lassen verrauschte und stoerempfindliche PHI-2-Signal des C64 durch ein "sauberes, flankensteiles" Signal er- setzen. Diesen Umbau sollte jedoch nur von einem Fachmann vorgenommen werden. 7.3.2.1. Phase 1 Ausschalten und Oeffnen des C-64. Mittels eines Ohmmeter sucht man im Be- reich "suedoestlich" der CPU 6510 die Durchkontaktierung, die mit Pin 39 der CPU 6510 (PHI- 2) verbunden ist. An diese Stelle loetet man einen ca. 5 cm langen Draht. 7.3.2.2.Phase 2 Man nimmt ein TTL-IC 74LS04 oder 74LS14 und verbindet diesen Draht mit Pin 4 des IC's. Pin 2 und Pin 3 werden mit- einander verbunden und Pin 1 wird ueber einen ca. 5cm langen Draht mit Pin 1 der CPU 6510 verbunden. An Pin 7 des obigen TTL-IC's legt man Masse und an Pin 14 die Betriebsspannung +5V. 7.3.2.3.Phase 3 Die Verbindung von Pin 39 der CPU 6510 mit der Leiterkarte des C-64 wird unterbrochen. Dieser Umbau sollte nicht von einem Loetunerfahrenen vorgenommen werden. Wenden Sie sich in diesen Faellen an eine Fachfirma mit eigener Reparatur- abteilung oder direkt an uns. (s. Kapitel "In eigener Sache") TurboProcess ist nunmehr Ihrem Rechner angepasst. 7.3.3.Testprogramm Bitte geben Sie jetzt folgendes Pro- gramm ein und starten es: 10 Print I,SOR(I): I = I+1: GOTO 10 Bringen Sie bitte Dip-Switch-7 in Po- sition OFF und schalten Sie mit Dip-Switch-8 zwischen den beiden Ge- schwindigkeiten 1 MHz und 4 MHz hin- und her. Anschliessend schalten Sie die beiden Schalter wieder auf ON. Sie sehen deutlich die Beschleunigung des Programms auf die 4-fache Geschwindigkeit. 8. Geschwindigkeitsregelung 8.1.Hardwaremaessige Regelung Mittels Dip-Schalter-Funktionswahl 8 koennen Sie hardwaremaessig zwischen 1 und 4 MHz umschalten. 8.2. Softwaremaessige Regelung Die Umschaltung zwischen 1 MHz und 4 MHz kann auch per Software erfolgen. Zustaendig hierfuer ist das Bit 7 der Adresse 1. Ist dieses Bit gesetzt, so laeuft TurboProcess auf 4 MHz; ist es geloescht, so ist Ihr Rechner auf 1 MHz geschaltet. Mit der folgenden Tabelle 3 koennen Sie softwaremaessig umschalten: ------------------------------------ Tab.3 : Umschaltung 1/4 MHz per POKE ------------------------------------ 4MHz : POKE 1,PEEk(1)OR128 1MHz : POKE 1,PEEK(1)AND127 ------------------------------------ Aber auch diese Umschaltung haben wir abschaltbar gemacht zwecks umfassender Kompatibilitaet: Es gibt einige Programme, die ohne logische Verknuepfung einfach in die Adresse 1 Werte hineinschreiben. Dip-Schalter-Funktion 7 gibt Ihnen die Moeglichkeit der Auswahl. 9. Wiederherstellung von Programmen. Ein weiter Vorzug von TurboProcess liegt darin, dass der Inhalt des Spei- chers Ihres Rechners auch nach dem Aus- schalten erhalten bleibt: durch die Verwendung von CMOS-Rams. 9.1. Basicprogramme Die Wiederherstellung von Basicprogram- men erreichen Sie durch Wiederherstel- len der Basicpointer und mit an- schliessender Eingabe von RUN. 9.2. Paralleles Betriebssystem Hat man das TurboProcess Parallel-Be- triebssystem eingeschaltet, so erfolgt die Wiederherstellung durch die Tasten- kombination CTRRL*. Nach dem Einschalten legt TurboProcess alle benoetigten Zeiger z.B.fuer den Basic-Anfang oder Variablen-Anfang, wieder neu an. Das bedeutet, dass bei- spielsweise ein Basicprogramm nach ei- nem Reset oder nach dem Einschalten des Rechners verschwunden zu sein scheint. 9.3. Autostartprogramme Da jetzt auch Autostartprogramme im Rechner bleiben und auch nach dem Aus- schalten des Computers nicht mehr ge- loescht werden koennen, gibt es im Be- triebssystem des TurboProcess eine so- genannte Bypass-Funktion: Haelt man waehrend des Einschaltens oderdes Resets die CTRL- Taste gedrueckt, so wird ein eventuell vorhandenes Auto- startprogramm ignoriert. So kann man- jedem "Autostartprogramm entkommen". 9.4. Das Netzteil des C64 Da einige Netzteile des C64 sehr schwach dimensioniert sind, kann es bei diesen Rechnern Probleme mit der Akku- pufferung geben. Das liegt daran, dass die Betriebsspannung bei zu schwachen Netzteilen nur ca. 4,5 V statt 4,9 V - 5,1 V betraegt. Hier hilft nur eine vernuenftige Stromversorgung. 9.5. Anschluss von TurboProcess an den PC128 Problematisch ist der Anschluss von TurboProcess an den PC 128 : bei vielen PC 128 ist auf den Masseanschluessen an den Expansionsport ein derart starkes Rauschen (bis zu 0,7V), dass ein ein- wandfreies Funktionieren von TurboProcess nicht mehr gewaehrleistet werden kann. Abhilfe schafft man, indem man eine vernuenftige Masseleitung, z.B. vom Cassettenport oder aus dem Inneren des Rechners zu TurboProcess oder an den Expansionsport des Rechners legt. Wenn Sie Ihr eigenes Betriebssystem be- nutzen moechten ist der serielle IEC-Bus ein Problem: Er laeuft nur auf 1MHz. Das bedeutet, dass man zum Laden, Speichern oder Drucken auf 1MHz herun- tertakten muss. Die beiden mitgeliefer- ten Betriebssysteme tun dies schon automatisch. Nur wenn Sie Ihre eigenen Betriebssysteme benutzen wollen, kann es die beschriebenen Probleme geben. Mit einer Aenderung im Betriebssystem, die im Kapitel Betriebssysteme beschrieben wird, ist auch diese Moeg- lichkeit realisierbar. 10. Das Betriebssystem TurboSystem 3 Als Betriebssysteme kommen das Origi- nal-Betriebssystem des C64 (angepasst an Turbo-Process) und unser Betriebs- system 3 (UP), wobei jedoch die parallele Datenuebertragung ueber den Userport erfolgt. Dieses Kernel finden Sie unter der Bezeichnung TSK 3 in Ihrer TurboProcess Karte. Es handelt sich hierbei um ein Spezialkernel fuer die Benutzung mit TurboProzess und ent- spricht im wesentlichen dem alten TurboTrans Plus-Kernal. 10.1. Floppyparallelbus Wir haben den Parallelbus mit einem Fastload ausgeruestet, d.h. Sie haben eine nochmalige Beschleunigung des Ladevorgangs um das 10-fache. 10.2. Centronics Schnittstelle am User- Port 10.3. Monitorprogramm (MiniMon) Der MiniMon dient dazu, schnell 'mal eben einen Speicherblock auf Diskette abzuspeichern, ein Programm an eine feste Anfangsadresse zu laden, oder einfach nachzuschauen was eigentlich so alles im Speicher des Computers 'rumsteht. Der Monitor wird ueber die Tasten- kombination CTRL & RETURN aufgerufen, meldet sich aber bei jedem Break- Kommando solange kein anderer Monitor aktiviert ist. Der Monitor kennt 6Befehle: 10.3.1. M(emory) XXXX Zeigt 184Bytes ab Hexadresse XXXX als Hex- ASCII- Dump auf dem Bildschirm an. Pro Ausgabe- zeile werden 8 Bytes zu- erst als Hexwerte, dann als ASCII-Zei- chen angezeigt, z.B. so: :4000 2a 2a 2a 2a 2a 2a 2a 2a ******** :4008 2a 2a 2a 2a 2a 2a 2a 2a ******** Die Hexwerte koennen durch Ueberschrei- ben geaendert werden, die ASCII-Zeichen nicht, da Ihre Bildschirmstellung nicht eindeutig ist. Wird eine Zeile geaen- dert, muss die Aenderung mit RETURN be- staetigt werden. Nach Neueingabe einer Zeile wird von der ersten geaenderten Adresse ab eine weitere Bildschirmseite ausgegeben, -da der Cursor nach Ausgabe eine Seite auf den Anfang der letzten Ausgabezeile positioniert wird, kann durch wiederholtes Druecken der RETURN-Taste der Speicher sehr rasch Seitenweise vorwaerts durchgeblaettert werden. Solange MiniMon aktiv ist, ist das BASIC-Interpreterom abgeschaltet. Mit "M A000" erhalten Sie Einblick ueber die unter dem BASIC-Rom ver- stecken Rambereiche. 10.3.2. L(oad) "TEST" XXXX Laedt ein File mit dem Namen "TEST" an die angegebene Adresse XXXX. Die Lade- adresse muss immer als vierstellige Hexadezimalzahl mitangegeben werden. Als Trennzeichen sind Leerzeichen er- laubt, sie sind jedoch nicht zwingend erforderlich. 10.3.3. S(ave) "TEST" XXXX YYYY Speichert den Block zwischen XXXX und YYYY-1 unter dem Namen "TEST" auf eine angeschlossen Floppy ab. XXXX und YYYY sind vierstellige Hexadezimalzahlen. 10.3.4. T(ransfer) XXXX YYYY ZZZZ Verschiebt ZZZZ Bytes von Adresse XXXX aufwaerts nach Adresse YYYY aufwaerts. T E000 2000 1FFF verschiebt den Spei- cher von $E000-$FFFF (Kernal) nach $2000-$3FFF. - Dieser Befehl konnte nur durch Verwendung des erweiterten Be- fehlssatzes der 65816-CPU implementiert werden, die eigentliche Verschie- be"routine" ist damit nur 2-Bytes lang. 10.3.5. G(o) XXXX Startet ein im Speicher befindliches Maschinenprogramm an der Adresse XXXX (4-stellige Hexzahl). Wird das Maschinenprogramm mit einem BRK-beendet, meldet sich MiniMon wieder zurueck. 10.3.6 X (Exit) Damit kann der Monitor verlassen und ins BASIC zurueckgekehrt werden. Ist der Monitor durch SHIFT & RESET akti- viert worden, wird bei Eingabe des Kommandos "X" die begonnene RESET- Routine fortgesetzt, d.h ein Hard- start des Systems durchgefuehrt. 10.4. RESET-Routine Folgende Tasten bewirken eine bestimmte Reaktion Ihres Computers wenn sie waehrend des Ablaufs der RESET-Routine gedrueckt sind: 10.4.1 CTRL & RESET Der Computer ignoriert eine etwa im Speicher vorhandene Autostartkennung, und fuehrt einen Kaltstart des Be- triebssystems durch. 10.4.2 SHIFT & RESET Nach Initialisieren den Hardware- und I/O Vektoren wird in den eingebauten Monitor verzweigt. 10.4.3 STOP & RESET Aehnlich wie beim Druecken von STOP & RESTORE wird lediglich ein Warmstart des Computers durchgefuehrt. Ein evtl. vorhandenes BASIC-Programm bleibt un- versehrt. 10.4.4 <- & Reset Loescht den gesamten Speicher 10.5. Basic-Erweiterung Das Basic Ihres C64 wurde um folgende Funktionen erweitert: 2.1 Eingabe von Hexadezimal- und Bi- naerzahlen. Mit TurboProcess koennen Sie saemtliche Zahleneingaben ausser in dezimaler Schreibweise auch als Binaer- oder Hexadezimalzahl eingeben, z.B. erfolgt auf PRINT $FFFF die Ausgabe 65535, und PRINT %10101010 ergibt 85. Sie sind dabei nicht auf vierstellige Hexzahlen beschraenkt, sondern koennen den vollen Fliesskommazahlenbereich ausnutzen. Das bedeutet, dass eine Hex- zahl maximal 32 Stellen umfassen darf, z.B. ergibt: PRINT$6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF den Wert 1.48873536E+38. Bei Binaerzahlen koennen Sie den vollen Zahlenbereich gar nicht ausnutzen, da eine Eingabezeile maximal 80 Zeichen lang sein darf; eine Zahl mit 78 Bi- naerziffern hat einen Wert von maximal 3.02231455E+23. Diese Befehlserweiterung ist jedoch nicht nur auf PRINT- Statements be- schraenkt, sondern ueberall dort zu verwenden, wo bisher mit Dezimalzahlen gearbeitet werden musste. Insbesondere im Zusammenhang mit den Befehlen PEEK, POKE und SYS bietet die neue Zahlendar- stellung gewaltige Vorteile, So laesst sich die Adresse $D020 fuer die Bild- schirmrahmenfarbe bestimmt leichter merken als 53280. 10.6. Bildschirmeditorerweiterung Durch Veraenderungen in der sog. Tasta- turdekodiertabelle besitzt TurboProcess nicht nur wie bisher acht, sondern sechzehn (16!) verschiedene Funktions- tasten, die von BASIC her zu unter- scheiden sind. In der folgenden Tabelle finden Sie die ASC/CHR$ - Werte aller sechzehn Funktionstasten kurz zusammen- gefasst: (ohne Zusatz) (mit SHIFT) F1 = CHR$(133) F2 = CHR$(137) F3 = GHR$(134) F4 = CHR$(138) F5 = CHR$(135) F6 = CHR$(139) F7 = CHR$(136) F8 = CHR$(140) (mit CBM) (mit CONTROL) F9= CHR$(120) F10 = CHR$(124) F11= CHR$(121) F12 = CHR$(125) F13= CHR$(122) F14 = CHR$(126) F15= CHR$(123) F16 = CHR$(127) Die oben abgedruckten Werte erhalten Sie auch, wenn Sie untenstehendes BASIC-Programm ablaufen lassen: 1000 GET A$: IF A$ = "" THEN 1000 1010 PRINT ASC(A$): GOTO 1000 10.9. Bildschirmeditor Bei den Aenderungen am Bildschirmeditor Ihres C64 handelt es sich um eine stark erweiterte Tastaturbelegung, die ueber die CONTROL-Taste angesprochen wird. 10.9.1. CTRL & A Nach dem Einschalten des Rechners, oder einem Reset, besitzen alle Tasten Ihres C64 Autorepeat- Eigenschaften. Nach einmaligem Druecken von CTRL & A gilt obengesagtes nur noch fuer die Cursor- tasten und die Spacetaste. Ein weite- rer Druck auf CTRL & A schaltet wieder Autorepeat auf alle Tasten. 10.9.2. CTRL & B Ist das Gegenstueck zur Taste "HOME", und setzt den Cursor in die linke un- tere Bildschirmecke. 10.9.3. CTRL & D Gibt das Directory der eingelegten Dis- kette auf den Bildschirm aus. 10.9.4. CTRL & L Laedt ein Programm aus der Directory an den Basicanfang (LOAD"NAME",8). Wird diese Tastenkombination ausserhalb der Directoryanzeige betaetigt, wird das Befehlswort "LOAD" auf den Bildschirm geschrieben. 10.9.5. CTRL & , Wie CTRL & L, das File wird jedoch ab- solut (,8,8) eingeladen. 10.9.6. CTRL & O Schliesst einen eventuell geoeffneten Diskettenkanal und gibt aus: OPEN15,8,15,". Das Betaetigen von CTRL & O innerhalb der Directoryanzeige loescht, nach Bestaetigung mit RETURN, das File in der aktuellen Cursorzeile. 10.9.7. CTRL & P Erzeugt eine Hardcopy des Textbild- schirmes auf einem angeschlossenen Drucker (Centronics oder IEC-seriell). 10.9.8. CTRL & V Initialisiert den Videocontroller neu, und schaltet auf den Standardbild- schirmspeicher ($0400) um. Der Bild- schirm wird dabei nicht geloescht. 10.9.9. CTRL & X schaltet alle evtl. eingeladenen BASIC- Erweiterungen wie z.B. Simon's-BASIC ab, und reaktiviert die Befehlserwei- terung von TurboProcess. Diese Tasten- kombination stellt also die Umkehrung des Befehls "?Q" dar. 10.9.10. CTRL & / Gibt den Status der Floppystation auf den Bildschirm aus. 10.9.11. CTRL & ? Ermoeglicht auch die komfortable Bedie- nung von bis zu 4 Laufwerken mittels der vorhandenen Kurzbefehle. 10.9.12. CTRL & * Restauriert ein geloeschtes BASIC-Pro- gramm nach NEW oder RESET (OLD-Funk- tion). 10.9.13. CTRL & : Setzt einen evtl. vorhandenen Hochkomma oder Insert-Modus zurueck (ESCAPE). 10.9.14. CTRL & ^ Ist die TAB-Taste; der Cursor wird um fuenf Spalten nach rechts bewegt. 10.9.15. CTRL & + Schaltet zwischen Slow- (1MHz) und Fast- (4MHz) Modus um. 10.9.16 CTRL & ? Wirkt aehnlich wie die DEL-Taste, der Cursor verbleibt jedoch auf seiner al- ten Position, und die Zeichen werden von rechts her nachgezogen. 10.9.17 CTRL & DEL Loescht die aktuelle Cursorzeile ab der Cursorposition nach links. 10.9.18 CTRL & HOME Loescht die aktuelle Cursorzeile ab der Cursorposition nach rechts. 10.9.19 CTRL & RETURN Fuehrt einen Sprung ueber den Software BREAK-Vektor aus. Dabei wird entweder der eingebaute MiniMon von TurboProcess oder ein beliebiger anderer Monitor aktiv. 10.9.20 CTRL & _ Schaltet auf Grossschrift/Graphik um 10.9.21 CBM & Stop CBM-Stop gibt "RUN" und Return aus 10.9.22 Shift & Stop Shift-Stop laedt und startet das erste Programm von Diskette, Device 8. 11. Betriebssysteme anpassen Sollten Sie neben den beiden mitgelie- ferten Betriebssystemen ein eigenes verwenden wollen, koennen Sie es in das Eprom von TurboProcess programmieren. Achten Sie bitte unbedingt darauf, dass Sie ein 32kByte Eprom (27256) mit einer Zugriffszeit von mindestens 150ns (besser 120ns) verwenden muessen. Das Eprom ist folgendermassen aufgebaut: Eprom mit zwei Betriebssystemen: -------------------------------- Tabelle 5: TurboProcess Eprom -------------------------------- $6000-$7FFF 1. Betriebssystem $4000-$5FFF 2. Betriebssystem $3000-$3FFF CharakterGenerator $2000-$2FFF frei $0000-$1FFF 8KByte Basic -------------------------------- ein Betriebssystem und ein 16K Modul ------------------------------------ Tabelle 6: 16k Modul/Betriebssystem ------------------------------------ $6000-$7FFF 1.Betriebssystem $2000-$5FFF 16 KByte Modul $0000-$1FFF 8 KByte Basic ------------------------------------ 11.1. Softwaremaessiges Umschalten Damit Ihr Betriebssystem auch software- maessig beim Laden und Speichern zwischen 1MHz und 4 MHz umschaltet, muessen in den LISTEN- und UNLISTEN- Routinen folgende Aenderungen gemacht werden: 14.1.1. Originalbetriebssystem Beim Originalsystem des C64 muss an den Speicherstellen $ED24, $ED3A, $ED41 und $EE2A ein Sprung zu einer Zusatzroutine (Umschaltung auf 1 MHz), die an der Stelle $E4BB7 stehen wird, erfolgen. Man kann diese Aenderung mit einem Direktassembler oder per Hex-Dump vor- nehmen: 20 B7 E4 JSR $E4B7 Die Speicherstelle $EE10 muss einen Sprung in die Zusatzroutine (Umschal- tung auf 4MHz) an der Stelle $E4CC2 haben: 20 C2 E4 JSR $E4C2 Jetzt muessen nur noch die Zusatzrou- tinen implementiert werden: E4B7 48 PHA E4B8 A5 01 LDA $01 E4BA 25 7F AND #$7F E4BC 85 01 STA $01 E4BE 68 PLA E4BF 4C 97 EE JMP $EE97 E4C2 48 PHA E4C3 48 A5 01 LDA $01 E4C5 05 80 ORA #$80 E4C7 D0 FF3 BNE $E4BC 14.1.2. Speeddos Plus Betriebssystem Da viele Anwender ueber das Betriebs- system Speeddos Plus verfuegen, doku- mentieren wir auch hierfuer die not- wendigen Veraenderungen: Folgende Aenderungen muessen am Speed- dos Plus Kernel vorgenommen werden, damit es auf TurboProcess richtig funk- tioniert: Diese beiden kleinen Routinen muessen an den entsprechenden Adressen abgelegt werden. Umschaltung auf 1MHz F14A 48 PHA F14B A5 01 LDA $01 F14D 29 7F AND #$7F F14F 85 01 STA $01 F151 68 PLA F152 4C 97 EE JMP $EE97 Umschaltung auf 4MHz F495 48 PHA F496 A5 01 LDA $01 F498 09 80 ORA #$80 F49A 4C 4F F1 JMP $F14F An folgenden Stellen muss gepatcht werden: ED3A 20 4A F1 JSR $F14A ;SLOW ED7A 20 4A F1 JSR $F14A ;SLOW EE2A 20 4A F1 JSR $F14A ;SLOW EFB1 20 4A F1 JSR $F14A ;SLOW EE10 20 95 F4 JSR $F495 ;FAST EA77 29 9F AND #$9F ;IRQ-ROUTINE: ;RECORDER- ;MOTOR AUS- ;SCHALTEN ACHTUNG!!!! Allein uns sind schon ueber 30 ver- schiedenen Versionen des Speeddos-Plus- Kernels ueber den Weg gelaufen, die alle kleine Unterschiede aufwiesen und sicher anders gepatcht werden muessen! Hinweis: Der Patch auf die FAST-Routine ist IMMER gleich!