.pl88
.pc78
.mb6
.fm3
.he     BASICODE - 3  BASCODER f}r den KC85/4   Stand: 14.09.1989   Seite #

                  Der Bascoder f}r den KC85/4
                  ---------------------------
 
Einfache Anleitung
 
Bei KC85/ erschein nac de Einschalte da bekannt Men} 
Der Cursor wird dann auf die Zeile
 
%BASIC
 
gesetz un di recht unte au de Tastatu liegend Tast (si 
wir䠠 i folgende ENTEҠ genannt wir bet{tigt Daraufhi 
erscheint die Abfrage:

HC-BASIC
MEMORY END ? :

Si wir ebenfall durc ENTE best{tig un e erfolg di 
erg{nzende Ausschrift:

47854 BYTES FREE
OK
>

Nu wir da Einlese de Bascoder "BAC854 vo Kassett durc 
folgende Eingabe vorbereitet:
 
>CLOAD"BAC854"
 
Dies Eingab wir zun{chs noc nich mi ENTEҠ best{tigt Di 
Kassett mi de Bascode wir i de Kassettenrecorde eingeleg 
un䠠 durc schnelle Vor- bzw R}cklau a di Startstell 
(Z{hlwer beachten positioniert Nu wir di Kassett mi 
Wiedergab gestartet Bei Ert|ne de Starttone wir a de 
Rechnertastatu di obrig Eingab mi ENTE best{tigt Jetz kan 
da blockweis Einlese de Bascoder entsprechen de au de 
Bildschir angezeigte Blocknummer verfolg werden Nac ca  
Minuten erscheint
 
OK
>

De Bascode is dami {hnlic wi ei normale BASIC-Program 
geladen Abe noc befinde sic de Rechne nich i BASICODE-
Mode. Hierzu f}hren Sie den Befehl

>RUN                
  
aus Au de Bildschir entsteh ei Startbil (Bil XX mi 
Hinweise au di verwendet Version KC-Ty un Autore de 
Bascoders.
 Mi de Anzeig de BASICODE-Men} geh de Bascode automatisc 
in den Kommando-Eingabemodus }ber. Der Bildschrim zeigt also:

>*  
Programm:0 Bytes       (0 Bytes durch BASIC-Programm belegt)
ASC-File:0 Bytes       (0 Bytes durch ASCII/BASICODE belegt)
Frei    :40959 Bytes   (40959 Bytes im Arbeitsspeicher frei)

Dies Angabe stelle de jeweilige Statu dar Di Anzah de 
freie Byte klammer de reservierte Stringspeiche au un is 
auc vo de verwendete Bascoder-Versio abh{ngig Zu Funktions
eingab wir angeboten:

 * : Funktion
---:------------------------------------
 L : Laden, Uebersetzen und Starten       
 S : Retten im KC-Format
 A : Einlesen ASCII-File
 W : Retten ASCII-File
 T : Uebersetzen ASCII-File ==> BASIC
 C : Uebersetzen BASIC ==> ASCII-File
 K : Listen ASCII-File

welche Funktion? :
.pa
Ab hier k|nnen Sie mit
 
welche Funktion? : L

ei BASICODE-Program einlesen Hierz forder Si di Ausschrif
 
Bitt Ban starten

auf Bei Einlese k|nne Si de "Programmtext verfolgen Nach
de da Program eingelese ist erfolg automatisc di ]berset
zun de BASICODE-Programm i di f} de KC85/ lesbar For un 
anschlie~en wir da Program ebenfall automatisc gestartet.
Au m|glich Fehle be diese Vorg{nge wir weite unte 
eingegangen Ebens werde i folgende di einzelne Funktione 
detaillierter beschrieben. 
Achte Si be de Kommandoeingab bitt auc darauf i welche 
Statu sic de Bascode befindet Jed BASICODE-Men}ausgab teil 
Ihnen auch mit, ob und in welcher Gr|~e ein
-Programm   (BASIC-Programm im KC-Format)  und/oder ein
- ASCII-File (als BASICODE-Programmtext auch Textfile genannt)
den Speicher Ihres KC's belegt.
E komm z Fehlerausschriften wen Si Funktione aufrufe di 
sic au eine nich vorhandene BASCODER-Statu beziehen S kan 
ei Textfil nich mi 'RUN gestarte werde un ei KC-Program 
l{~ sic ohn ]bersetzun (*C nich mi de Optio *נ au 
Kassette retten. *S setzt dagegen ein KC-Programm voraus.      
   

 
Beschreibung des Bascoders
   
Befehls}bersicht
----------------
Di Auswah de Funktione de Bascoder erfolg durc di Eingab 
eine Sternchen "*" de ei Buchstab un ENTEҠ folgt Si 
k|nne abe auc di Funktionstaste (F1-F7 nutzen Beachte Si 
bitte da F durc "shift un "F1" F durc "shift un "F2 
usw realisier werden Al Kommando sin sowoh Gro~- al auc 
Kleinbuchstaben zugelassen.
 
Eing.I   Funktion     
  -----I------------------------------------------------------------
 *   I  Hilfsmen}         
     I  Es erscheint ein Hilfsmen} mit allen Funktionen.
-----I------------------------------------------------------------
 *L  I  Laden, ]bersetzen und Starten
(F1) I  So wird ein BASICODE-Programm von Kassette eingelesen,
     I  automatisch in das KC-BASIC }bersetzt und gestartet.
 -----I------------------------------------------------------------
 *S  I  Retten im KC-Format
(F2) I  Hierdurch k|nnen Sie ein in das KC-BASIC }bersetztes
     I  BASICODE-Programm im KC-Format auf Kassette speichern.
-----I------------------------------------------------------------
 *A  I  Einlesen ASCII-File
(F3) I  Soll ein Programm oder ein anderes ASCII-File im BASICODE-
     I  Format von Kassette in den Speicher geladen werden, w{hlen
     I  Sie diese Funktion. Da nicht }bersetzt und gestartet wird,
     ɠ is si auc geeignet Kopie i BASICODE-Forma z
     I  erstellen. (*W)
-----I------------------------------------------------------------
  *W  I  Retten ASCII-File
(F4ɠ Mi diese Funktio rette Si ei Program ode ei
     I  anderes ASCII-File im BASICODE-Format auf Kassette.
-----I------------------------------------------------------------
 *T  I  ]bersetzen ASCII-File ==> BASIC
(F5) I  Ein im Speicher stehendes Programm im BASICODE-Format wird
     I  durch diese Funktion in das KC-BASIC transformiert.
-----I------------------------------------------------------------ 
 *C  I  ]bersetzen BASIC ==> ASCII-File                         
(F6) I  Ein im Speicher stehendes BASIC-Programm (KC-Format)  
     I  wird in ein ASCII-File (BASICODE-Format) transformiert.
-----I------------------------------------------------------------
 *K  I  Listen ASCII-File
(F7) I  Ein im Speicher stehendes Programm (BASICODE) oder anderes
     I  ASCII-File wird auf dem Bildschirm zur Anzeige gebracht.
-----I------------------------------------------------------------
(F8) I  RUN                  -  Start eines BASICODE-Programms
-----I------------------------------------------------------------
(F9) I  CONT                 -  Fortsetzung nach BRK
-----I-----------------------------------------------------------
(FA) I  LIST                 -  Listen im KC-Format
-----I-----------------------------------------------------------
(FB) I  %REBASIC : CALL*40D  -  BASICODE-Restart nach RESET
     -----I----------------------------------------------------------- 
Jede Kommandoaufru bewirk vo seine Ausf}hrun di L|schun 
des Bilschirmes.  
 
 *      Hilfsmen}
-----------------
Gebe Si nu ei Sternche ei ode is da ih folgend Kommand 
nich i de List vorhanden erscheine di aktuelle Wert de 
Speicheraufteilun un da obe gezeigt Men de m|gliche Funk
tione au de Bildschirm Jetz brauche Si nu noc di ent
sprechend Buchstabentast z dr}cken    

 *L     Laden, ]bersetzen und Starten                         (F1)
-------------------------------------
Dies Optio nutze Si u mi eine Programm da i BASICODE-
Forma au Kassett steht z arbeiten.
Zun{chs werde Si aufgeforder de Recorde z starten Erkenn 
de Bascode de Vorton werde vo ih di empfangene Schwingun
ge ausgewerte un i H angezeigt Dementsprechen wir nu di 
Magnetbandeingab optima eingestellt Kan da Startbyt nich 
eindeuti ausgewerte werden erschein di Ausschrift:
      "kein BASICODE-Programm !"
Da Einlese de ASCII-File (BASICODE kan mi ge}bte Aug au 
de unterste Bildschirmzeil verfolg werden Trete offensicht
lich Lesefehle au un Si wolle da Einlese abbrechen s 
dr}cke Si ein Taste.
Is da Einlese beende ode unterbroche worden erhalte Si 
ein Ausschrif zu Stoppe de Recorders Is de verf}gbar 
Speicherplat zu Ablag de Programm nich ausreichend werde 
Si mi de Meldung:
      "Speichergrenze erreicht!"
gewarnt
Ha de Bascode all Zeiche fehlerfre lese k|nnen wir sofor 
i da KC-BASIà transformier (Optio *T un da }bersetzt 
Program gestartet Anderenfall erhalte Si de Hinweis:
      "Lesefehler erkannt !"
I diese Fal k|nne Si eventuel dennoc da ASCII-Fil mi de 
*T-Optio z eine editierbare BASIC-Program i  KC-Format 
machen   
 
 *S   Retten im KC-Format                                     (F2)
------------------------- 
Da Rette i KC-Forma trenn da ]bersetzt BASICODE-Program 
vo Bascode a un speicher e Ihne al gew|hnliche BASIC-
Program au di Kassette S gerettet kan e z eine sp{tere 
Zeitpunk mi CLOAD"NAME eingelade un bearbeite werde ohn 
ers }bersetz werde z m}ssen Da kan be de Programmentwick
lun vo Vortei sein.
Versuche Si ei BASIC-Program i KC-Forma mi CSAVE"NAME au 
Kassett z speichern wir stet de Bascode mi gerettet Si 
sollte die vermeiden e w{r unn|ti lan un k|nnt bei 
Einlade z un}bersichtliche Nebeneffekte f}hren.
W}nsche Si dagege ein Kopi (backup de Bascoders s erstel
le si e sic sofor nac de Einlese (un noc vo RUN! de  
gleiche mi de BASIC-Kommand CSAVE"BAC854" 
 
 *E   Einlesen ASCII-File                                     (F3)
-------------------------
Dies Optio wir verwendet u ei ASCII-Fil (i BASICODE-
Format i de Speiche einzulesen I Gegensat z '*L mu da 
gelesen Fil nich zwangsl{ufi ei Program sein De Anwende  
}bernimm  di Steuerun un kan entscheiden o in KC-Forma 
}bersetzt mi '*W ein Kopi i BASICODE-Forma herzustelle 
ist, oder z.B. mit '*K' Text zur Anzeige gebracht werden soll.
Ansonste gelte di Erl{uterunge z '*L' 


.pa
 *W   Retten ASCII-File                                       (F4)
-----------------------
Zu kopiere eine ASCII-File (BASICODE ode z Aufzeichnun 
eine eigene Programm i BASICODE-Format m}sse Si di *W-
Optio aufrufen Zuvo sollt di Kassett positioniert de Re
corde au "Aufnahme gestell un gestarte werden Steh da 
Program nich al ASCII-Fil bereit wir di Warnung:
      "kein Textfile im Speicher !"
ausgegeben Da Auslager de BASICODE-Programm kan i de Sta
tuszeil verfolg werden Wolle Si di Funktio vorzeiti be
enden bet{tige Si ein Taste.
 
 *T   ]bersetzen ASCII-File ==> BASIC                         (F5)
-------------------------------------
Da ]bersetze eine BASICODE-Programm (ASCII-File i da KC-
Forma wir durc de Bascode nac de fehlerlose Einlade 
(Optio "*L" automatisc ausgef}hrt Da ASCII-Fil bleib dabe 
nich erhalten Di }bersetzte BASIC-Zeile sin i de Status
zeil sichtbar.
D da KC-BASI de Befeh 'LOG nich kennt ha de Bascode di 
zus{tzlich  Aufgabe be de Wandlun de ASCII-Fil (BASICODE-
Programm i KC-BASI 'LOG durc 'LN z ersetzen Di Transfor
matio kan i de Statuszeil verfolg werden.


 *C   ]bersetzen BASIC ==> ASCII-File                         (F6)
-------------------------------------
Lieg ei Program i KC-Forma vor wir e zun{chs au unzul{s
sig Befehl durchsucht Dami sol verhinder werden da BASIC-
Anweisunge di de KC-Interprete bekannt abe nich i Befehls
sat vo BASICODE- vereinbar sind i da Textfil gelangen   
Gleichzeiti werde gem{ de Regeln wi ei Textfil auszusehe 
hat Leerzeiche (SPACE gesetz bzw entfernt Finde de 
Bascoder eine Fehler wir da durc di Ausschrift:
     "unerlaubter BASICODE-Befehl !"     
gemeldet Di betreffend BASIC-Zeil wir angezeig un zu Edi
tierun angeboten Si k|nne nu de falsche Befeh verbesser 
un di *C-Optio wiederholen.
Is da gesamt BASIC-Program au dies Weis kontrollier wor
den beginn de zweit Tei - di eigentlich ]bersetzun i ei 
ASCII-File Diese Vorgan is wiede i de Statuszeil z ver
folgen Dabe wir da BASIC-Program a da Speicherend gescho
be un da ASCII-Fil Zeil f} Zeil a desse Stell gesetzt 
Textzeilen di l{nge al di zul{ssige 6 Zeiche sind werde 
al 'z lang au de Bildschir notiert de Befeh L gege LO 
ausgetauscht.
Sin kein Fehlerausschrifte z verzeichne un arbeitet da 
Program i KC-Forma fehlerfrei habe Si jetz ei BASICODE-
Textfil (ASCII da Si mi '*W au Kassett schreibe k|nnen 
Diese BASICODE-Program is nu au jede Computerty lauff{hig 
f} de e eine Bascode gibt.
Is da Program noc nich fehlerfre (Zeile z lang) is e 
wichtig Si transformiere mi '*T i da KC-BASI zur}c un 
f}hre entsprechend [nderunge durch Si gef{hrde sons de 
Programmaustausc zwische de Computertypen da wichtigst An
liege vo BASICODE.
 
 *K   Listen ASCII-File                                       (F7)
-----------------------
Mi de LIST-Tast ode de Kommand 'LIST kan ei Program i 
KC-Format nich abe ei ASCII-Fil angezeig werden Wolle Si 
diese jedoc sehe (z.B unmittelba nac fehlerhafte Einlesen) 
s benutze Si di Optio '*K' Sp{ter Bascoder-Versione werde 
auc eine konfortable Zugrif zu Editierun ode einfach Text
verarbeitungs-Funktione anbieten.
Di Angab eine Zeilennumme is nich m|glich fehlerhaf gele
sen ASCII-Zeiche werde al '# dargestellt.
 
 
Arbeiten mit BASICODE-3 Best{nden
---------------------------------       
Di Bestandsroutine arbeite f} NF= un NF= mi BASICODE-
Best{nde gem{ de Protokoll F} di Arbei i KC-Forma 
(NF=2;NF=3 werde speziell Routine bereitgestellt Be Beach
tun de zul{ssige Zeiche sin u.a auc Speicherabz}g (z.B 
mi Textprogramme erstellt Daten) insbesonder abe auc KC-
Programmlisting un Stringfelde }be ei BASICODE-Hilfsprogram 
i eine echte BASICODE-Bestan wandelbar KC-seiti erhalte Si 
da gefordert ASCII-Forma durc Kanal-Ausgabebefehle:

PRINT#1 Daten  oder
LIST#1"Name"   f}r BASIC-Programmlistings
 
Beachte Si di Hinweis i Ihre BASIC-Handbuch I jede Fal 
sollte die Anweisung NULL 0 gegeben werden.
    Habe Si eine BASICODE-Bestand de mi NF= (KC-Format au 
Kassett gerette wurde s kan e ebenfall au~erhal BASICOD 
mit den Befehlen

INPUT#1 Daten  oder
LOAD#1"Name"   f}r BASIC-Programmlistings

de Kà }bergebe werden Auc hie sollt dan di NUL̠  -
Anweisun zu Synchronisatio gegebe werden De Anwende ha 
zus{tzlic z beachten da di mi NF= gespeicherte Daten 
gena wi di KC-Kanalausgabe bei Einlese i KC-Mod nac 
de Endekennzeiche (03H i de Direktmod de Computer f}hren 
Gegebenenfalls sind eigene Endekennzeichen zu definieren.
Durc蠠 wechselseitigVerwendung de BASICODE-Bestandsroutine 
stehe de KC-Nutze als zus{tzlich Verarbeitungsforme offen 
Dabe kan de Bascode entwede Hilfsmitte ode Betriebssyste 
sein.
         Da Lade un Rette vo Best{nde au Diskett (NF= bi NF=7 
ist i de vorliegenden Versio nich vorgesehen 
Hinweis zu Start bzw Sto de Recorder werde gegeben Zwi
sche de Bl|cke brauch de Recorde nich abgeschalte werde 
d da Auff}lle de Textpuffer rech schnel vo sic geht.
Solle BASICODE-Best{nd gelese werde wir gepr}ft o e sic 
auc wirklic u ein Bestandsdate handelt Di Ausschrift:
      "kein BASICODE-Bestand!"
zeig an da de Bascode kein Best{nd vorfindet Wir ei 
Bestandsbloc fehlerhaf gelese folg di Ausschrift:
      "Lesefehler! zurueck? J/N"
Kan Ih Compute de feherhafte Bloc wiederhol nich lesen 
gebe Si "N ein Di Date werde dan trot Fehle }bernommen 
Ei gute BASICODE-Program werte dies dan aus     


BASICODE-Restart 
----------------
Wa e unumg{nglich de BASICODE-Zustan z verlasse (RESET) 
kan diese u.U erneu hergestell werden ohn de Bascode 
nochmal einzuladen Bet{tige Si daz di Funktionstast F 
(SHIFT+F5) Bring da noc keine Erfolg is zun{chst

%REBASI 
aufzurufen Erschein di Best{tigun mi
OK
< 
gebe Si bitt de Befeh
 <CALL*40D

ei un lasse Si ih ausf}hren Somi werden sowei da noc 
m|glic ist di Systemzeige au BASICOD gesetzt Si erkenne 
den ordnungsgem{~en RESTART am Startbild.      
   

         Besonderheiten des KC85/4
-------------------------
Di Bedienoberfl{ch de Bascoder wurd f} all KC-Type ein
heitlic gestaltet Di Gleichhei de Kommando un [hnlichkeite 
ihre Eingab zwische K un ZX-Spektru sin ebenfall gewollt 
Wi hoffen da dies Tatsach z eine schnelle Verbreitun un 
Nutzun vo BASICOD beitr{gt 
De Textschir de KC85/ besteh au 3 Zeile mi j 4 Zeichen 
Di Vollgrafi (256*320 wir i BASICOD mi 240*32 Pixe ausge
nutzt De KC85/ nutz sein System-Unterprogramm i de Grafik-
Subroutinen
De ASCII-Zeichensat de KC85/ weich vo Standar (US-ASCII 
ab Di Code 91-9 un 9 liege i de erste Tastaturebene 
gebe abe ander Zeiche au de Bildschir aus Auc di Code 
123-12 nutz de K zu Darstellun andere Zeiche ({,|,},~) 
Si sin abe nu }be di zweit Tastatureben z erreichen.
Is innerhal vo BASICODE-Programme ei Zeiche z l|schen s 
is daz di Tast 'CLR vorgesehen Si gib de Cod 12 ab I 
EDIT-Modus hat sie ihre alte Bedeutung verloren. 
.pa
Di Forderunge de Subroutin 65 wurd realisiert Schrif kan 
auc unabh{ngi vo de Textzeile grafisc geschriebe un wiede 
gel|sch werden
Di Tonausgab (GOSU  400 erfolg }be de TAPE-Ausgan de 
KC85/  i einheitliche Lautst{rke Is SV=0 h|re Si keine 
Ton Nutze Si eine Monito mi RGB- ode Videoanschlu~ sin 
Unterscheidunge i de Lautst{rke z h|ren Jede einzeln To 
kling unabh{ngi vo seine programmierte Lautst{rk aus 

Wolle Si eine Drucke anschlie~en s ben|tige Si ei V24-
Modu M003 Di Initialisierun erfolg bei erste Star de 
Bascoder (RU nac CLOAD"BAC854") Ein vorhanden V24-Schnitt
stell wir auc dan initialisiert wen kei Drucke angeschlos
sen ode diese 'online ist Wurd di Betriebsbereitschaf 
jedoc einma erkannt wir si be alle Druckfunktione ver
langt  
Erfolgt RESET trit a Stell de "BASICODE-Drucktreibers di 
intern Initialisierun de M00 (V24) Wolle Si de komfortab
le BAC854-Treibe nutzen s erreiche Si da durch:

%V24I (h v s)

   h=horizontale Verg|~erung f}r Screencopy (Standard 1)
      v=vertikale Vergr|~erung f}r Screencopy  (Standard 1)
        s=Anzahl der Space f}r den linken Rand   (Standard 10)
 
De Drucktreibe arbeite mi de Kanal de M00 (USER-Kanal2 
bf} all EPSON-kompatible Drucke (K6313/20) abe auc mi de 
Kleinschreibmaschin S3004/ u.a.) Di Tastenkombination:
"shift un "CLR ode di Ausgab vo "CHR$(15) leite eine 
Screencopy-Ausdruc de Bildschirme ein Au de Bildschir ent
steh ei negiertes verschiebliche Fenster Folgend 
Steuerfunktionen sind vereinbart:  (C=Cursortaste in Richtung)

            C-oben      =   obere Fenstergrenze nach oben
            C-unten     =   untere Fenstergrenze nach unten
            C-rechts    =   rechte Fenstergrenze nach rechts
            C-links     =   linke Fenstergrenze nach links
  shift und C-oben      =   untere Fenstergrenze nach oben
  shift und C-unten     =   obere Fenstergrenze nach unten
  shift und C-rechts    =   linke Fenstergrenze nach rechts
  shift und C-links     =   rechte Fenstergrenze nach links
  shift lock            =   Fensterbewegung schnell / langsam
  home                  =   Fenster invertieren
  enter                 =   Druckbeginn

Der Grafikdruck kann mit der Taste 'BRK' unterbrochen werden.   
Diese speziell Drucktreibe wir bei erste Star nac de 
Einlade vo BAC85 i de IR kopiert E is danac nich meh 
Bestandtei de Bascoders Daru sin Kopie de Bascoder 
unbedingt vor dem Start mit RUN anzufertigen.
  
De Bascode is vollst{ndi i Maschinensprach geschrieben Di 
Subroutine de BASIC-Zeile 10-95 enthalte ausschlie~lic 
Sprunganweisunge i da Maschinenprogramm w auc蠠 all 
Parameter}bergabe a de Interprete򠠠 erfolgen Dies 
Sprunganweisunge d}rfe vo Nutze de Bascoder nich ver{nder 
werde un sin deshal f} ih nich sichtbar Di Subroutine 
k|nne i Direkt-Mod nu dan aufgerufe werden wen de rufend 
Befehl an erster Stelle der Eingabezeile steht.
         De Bascode nutz eigen Tastaturroutine un eine ver{nderte 
Zufallsgenerator Be Verwendun de Hilfsprogramm BASE is di 
Umlenkun de Kassettenein- un Ausgab au di KC-Erweiterungs
baugrupp D00 - Flopp Dis garantiert Da gil jedoc nich f} 
BASICODE-Best{nd (NF= bi NF=7).





                                Andreas u. Uwe Zierott
 