APPLICATIONSPROGRAMMATION ★ BASIC COMPILER 464 (CPC AMSTRAD INTERNATIONAL) ★

Basic Compiler 464 (CPC Amstrad International)Applications Programmation
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Bascomp ist ein einfacher aber relativ schneller BASIC-Compiler, der in reiner Maschinensprache geschrieben wurde. Er arbeitet nur auf dem 464, da sehr viel Gebrauch von ROM-Routinen gemacht wird. Der Compiler kann nur Integerarithmetik und erlaubt nur Variablennamen, die aus einem Buchstaben bestehen. Einschränkungen sind auch beim STEP-Befehl zu machen, er konnte nicht übernommen werden. Alternativ kann eine gestepte FOR NEXT Schleife mit folgendem kleinen Trick simuliert werden:

10 FOR I = 1 TO
20 20 A=I*3
30 NEXT

Folgende Befehle stehen dem Programmierer zur Verfügung, wobei v eine (integer-) Variable, i eine Variable oder eine Konstante sein kann.

BORDER I,I
DI
GOTO
V=JOY(0)
V=I
XOR I
MOVE I,I
PLOT
CLEAR
DRAWR I,I(,I)
INK I,I,I
V = I/I
LOCATE I,I
V = PEEK(I)
PRINT I
V = TEST(I,I)

CALL I
EI
IF..THEN...GOTO
3V = I + I
V=I OR I
OUT I,I
PLOTR I,I(,I)
TAG
CLG I
FOR V = I TO I
V = I
V = I MOD I
MOVE I,I
PEN I
RETURN
V =TESTR(I,I)

CLS
END
V = INKEY$
V=I*I
MODE I
PAPER I
REM
TAGOFF
DRAW I,I(,I)
GOSUB
V = I + I
V=I AND I
NEXT
POKE 1,1
SPEED INK I,I
IF..THEN..GOSUB

Der Compiler wird mit dem RSX-Befehl: |COMP, mcadr, varadr aufgerufen, wobei mcadr die Adresse für das compilierte Bais Programm beschreibt und varadr den freien Speicherbereich für Zwischenrechnungen des Compilers. Der Wert dieser Adresse errechnet sich aus:

ANZAHL DER PROGRAMMZEILEN*7

Fehler im BASIC-Programm werden inklusive der Zeilennummer angegeben.

ACHTUNG!

Bei einem Fehler wird die Compilation abgebrochen, Das MC-Programm ist unvollständig und läuft noch nicht.

Folgender Aufbau gilt generell für alle compilierten Programme: mcadr = mcadr+51 Variablenbereich mcadr+52 Compilat

Um unser Demoprogramm auszuprobieren, geben Sie bitte folgendes ein:

MEMORY &4FFF: |COMP,&5000,&6003

Das Programm wird compilert

CALL &5000+52 Das Programm startet.

Probieren Sie ruhig einmal aus, wie sich das Demoprogramm verhält, wenn Sie es einfach mit RUN starten, der Unterschied ist wirklich verblüffend.

Databox-Besitzer finden den Datalader auf ihrer Kassette/Diskette. Dieser Datalader muß erst mit RUN gestartet werden, um das Binärteil zu erzeugen. Dieses Binärteil wird dann mit der Laderoutine aus dem Heft (Listing 1) gestartet.

(S. Riege/TM) , CPCAI

★ PUBLISHER: CPC Amstrad International
★ YEARE: 1986 , 1987
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: CPC AMSTRAD INTERNATIONAL 1987
★ AUTHOR: Stephan Riege
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Basic  Compiler  464    (CPC  Amstrad  International)    GERMANDATE: 2022-08-03
DL: 116
TYPE: ZIP
SiZE: 7Ko
NOTE: 40 Cyls
.HFE: Χ

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » MASKGEN : Maskengenerator
» Applications » Maske (CPC Amstrad International)
» Applications » Quickmask
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 817 millisecondes et consultée 512 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.