APPLICATIONSPROGRAMMATION ★ BW-COM ★

BW-COMApplications Programmation
 ★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se le presenta en su versión original ★ 
 ★ Dieser Text wird in seiner ursprünglichen Fassung Ihnen präsentiert ★ 

Doping für Basic-Programme

Fast so schnell wie Assembler werden ihre Basic-Programme mit »BW-COM«. Dieser Compiler zum Abtippen läuft auf dem Schneider CPC 464.
Welcher Computerbesitzer hat sich nicht schon gefragt, wie er seine Programme schneller machen kann. Vor der Losung Assembler schreckt man aber dann meist doch wegen des großen Zeitaufwands beim Editieren zurück. Man müßte doch die Vorteile von Assembler (schnell, kurze Programme) mit dem Vorteil von Basic (einfach erlernbar, leicht zu editieren) kombinieren können. Aus dieser Idee heraus entstand der vorliegende Compiler. Einschränkungen in der Syntax nimmt man in Basic gerne in Kauf, wenn die compilierten Programme dadurch kürzer und schneller werden. Manche Compiler verarbeiten den kompletten Befehlssatz, bringen dann aber weit weniger Geschwindigkeitsvorteile als Compiler, die nur eine
beschränkte Syntax erlauben. Den vollständigen Befehlssatz finden Sie in dem nebenstehenden Kasten.

  • A steht dabei für Ausdruck, zum Beispiel PEEK(x+10)—PEEK (DEEK(y+v)) oder y
  • C steht für Konstante zum Beispiel 25001 oder 10 V steht für Variable, zum Beispiel t (immer nur ein Zeichen!) oder w
  • n$ steht für String, zum Beispiel meier oder pgm1

Von den Rechenfunktionen sind bei der nicht erweiterten Version lediglich»+« und»—«erlaubt Weiterhin darf pro Zeile nur ein Befehl stehen, also kein Doppelpunkt. Variablennamen dürfen nur ein Zeichen lang sein. Die Rechenergebnisse dürfen nur im Integerbereich liegen.

»BW-COM« ist besonders für kleine Unterprogramme die in normale Basic-Programme eingebunden werden sollen, geeignet. Mittels »DATA 25000« (statt COM) wird eine Datei (Name »DATA«) erstellt die das Assemblerprogramm (Beginn 25000) enthält (samt Einleseschleife). Mit CALL 25000 kann es von einem darumherum geschriebenen normalen Basic-Programm benutzt werden.

Eine Besonderheit muß an dieser Stelle erwähnt werden: Mit »CALL C.g.t1.h5...« werden die Integer-Werte der Variablen g,t1 und h5 an das Assemblerprogramm übergeben. Im Assembler-Quellprogramm findet man diese Werte als Vorbesetzung für die Variablen z,y.x. also der erste Wert nach CALL C ist z, der zweite y, der dritte x. der vierte w und so weiter Alle im Quellprogramm verwendeten Variablen müssen mit CALL vorbesetzt werden (zum Beispiel mit 0). Einzige Möglichkeit. dies zu umgehen, ist, in die erste Programmzeile (des Quellprogrammes) den Befehl »BASIS« zu schreiben. Das ist bei den nachfolgend erwähnten CP/M-Programmen immer notwendig. Wird »DATA« mit dem Wert 256 ausgeführt, erstellt »BW-COM« eine unterCP M ausführbare Datei »pgm.com«. Da »BW-COM« systemspezifische Firmwarecalls verwendet, ist eine Übertragung auf andere CP'M-Computer leider nicht möglich. In bestimmten Fällen kann es durch Unterschiede zwischen CP/M und Amsdos (zum Beispiel Moduswahl) ebenfalls zu Fehlem kommen: dem Anwender sei hier ein Versuch empfohlen.

Grafik:


CLS

CLG

ORIGIN A,A

MOVE A,A

MOVER A,A

DRAW A,A

DRAWR A,A

PLOT A,A

TAG

TAGOFF

TEST (0)

löscht Bildschirm

löscht Grafikfenster

Grafiksprung setzen

absolut Grafikcursor

relativ Grafikcursor

Linie nach AA ziehen

relative Linie ziehen

Punkt absolut setzen

schreiben auf Graf .-Pos.

TAG ausschalten

Punktfarbe an Graf -Pos

Text:

PAPER A

PEN A

LOCATE A,A

PRINT CHR$(A)

GETV

Schreibfiachenfarbe

Schreibstiftfarbe

Textcursor setzen

druckt Zeichen, ein Befehl

holt Zeichen von der Tastatur

Sonstige:

REM

GOTO C

GOSUB C

RETURN

END

PEEK (A)

DEEK (A)

POKE A.A

DOKE A,A

DI

EI

MODE A

FOR V=A TO A

NEXT

BASIS

IF A=A THEN
             GOTO

I F A< A THEN
              GOTO

Bemerkung

springt zur Zeile

springt zu Unterprogramm

verläßt Unterprogramm

beendet Programm

Wert der Speicherstelle A

= PEEK (A)+256-PEEK(A+1)

schreibt Wert von A in A

Doppel POKE (analog DEEK)

sperrt Unterbrechung

ertaubt Unterbrechung

wählt Modus A

definiert Schleife

beendet Schleife

setzt Variabienzeiger

Spruno bei Gleichheit

Sprung bei Ungleichheit
(außer GOTO ist nur GOSUB erlaubt!)

Direkt:

NEW

COM

RUN

LIST

LIST#8

SAVE ”n$"

LOAD "n$"

MERGE "n$"
DATA,C

CAT

löscht Programm

compiliert Programm

startet compiliertes Programm

listet auf Bildschirm
listet auf Drucker
speichert (Quei-) Programm

holt (Quell-) Programm

fügt Programmteil an schreibt das Assembler
programm in Form von Datazerfen 
auf Disk oder Tape 

holt Catalog

Das Speicherfonmat (mit SAVE und LOAD) ist voll zum normalen Schneider-Basic-Format kompatibel. Basic-Quellprogramme können also auch ohne »BW-COM« erstellt oder geladen werden Lediglich beim Abspeichem (ohne »BW-COM«) muß »,A« den Fiienamen folgen, da das ASCII Format verwendet wird. Basic-Quellprogramme laufen unter Schneider-Basic nur. wenn keine abweichende Syntax (zum Beispiel DEEK(a)) verwendet wurde Umgekehrt gilt das gleiche Einige Besonderheiten zum Schluß: Da kein STEP-Befehl existiert, kann man sich durch Manipulation der Laufvariablen behelfen, ein negativer STEP ist aber auch so nicht möglich. FOR-NEXT-Schleifen laufen nur mit einem Startwert größer Null richtig. Negative Konstanten können im Quellprogramm nicht verwendet werden Der END-Befehl in einem Unterprogramm wirkt wie RETURN Längere Programme (über 50 Zeilen) sollte man in Programmsegmente zerlegen und gesondert kompilieren. Im Eingabeeditor, in dem man nach RUN »BW-COM» landet kann man bei der Quellprogramm-Erstellung Jen »Copy-Cursor« voll verwenden. Dieser Editor ähnelt dem Schneider-Editor so stark, daß man schon aufpassen muß. wo nan sich befindet Das Basic-Quellprogramm steht außer lach NEW und LOAD nach jeder Operation noch zur Verfügung.

Berthold Weber/hg/hl , Happy Computer 7/Juli 1985

★ PUBLISHERS: Happy Computer
★ LIZENZ: COMMERCIALE
★ JAHR: 1985
★ CONFIG: 64K + AMSDOS
★ SPRACHE:
★ AUTHOR: Berthold Weber

★ AMSTRAD CPC ★ DOWNLOAD ★

File:
» BW-COM__(Happy_Computer)__LISTING__GERMANDATE: 2017-01-22
DL: 1 fois
TYPE: PDF
SIZE: 997Ko
NOTE: Uploaded by hERMOL ; 4 pages/PDFlib v1.6

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Logicys - Act - 1 (Cahier de l'Amstrad)
» Applications » Pm Informatique (Cahier de l'Amstrad)
» Applications » Rh - Vokabula
» Applications » Dessin d'Histogrammes (Amstrad Magazine)
» Applications » Mastervideo
» Applications » Stock - Aid

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.75-desktop/c
Page créée en 096 millisecondes et consultée 102 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.