CPC Wiki Forum Die Amstrad-CPC-Community

CALL und POKE

Started by FirstDefender · 2023-02-11 18:48 · Replies: 16 · Views: 3446
#1
Giebt es oder hat einer eine Liste aller call und poke Befehle und was sie Bewirken ?
👍 0👎 0
#2
Interessante Frage. Per Definition lädt ein Poke einen Wert an eine definierte Speicheradresse und ein Call springt an eine Adresse und lädt den Code von dort dann in die CPU zum Ausführen. Das ist erst einmal relativ neutral.
Wahrscheinlich meinst du die Firmware Einsprungsadressen?
Last edited by HAL6128 on 2023-02-11 21:42
👍 0👎 0
#3
https://www.cpcwiki.eu/imgs/6/6f/CPC_664-6128_intern.pdf

xesrjb
"Der Wein mit der Pille ist im Becher mit dem Fächer. Im Pokal mit dem Portal ist der Wein gut und fein„
👍 0👎 0
#4
Firmwareeinsprünge und -variablen sind sehr schön erklärt im Schneider CPC Systembuch.
👍 0👎 0
#5
Ich Meinte soetwas , das ist bis jetzt alles was ich gefunden habe.

Call, Out und Pokes

CALL 0 Computer-Reset
CALL &BB7E sperrt Cursortasten bei Input
CALL 45966,0 sperrt ESC (Input nicht)
CALL &BB7B löst Sperre fuer Input auf
CALL &BB48 sperrt ESC
POKE 370,0😛OKE 371,0 Zeile 1-9 unsichtbar
WAIT &FF34,20,25 sperrt alles
CALL &BB81 Cursor frei
CALL &BB84 Cursor sperren
CALL &BC00 Farben = normal
CALL &BC40 scrollt Screen nach unten
POKE &BDEB,&C9 MODE loescht nicht mehr
CALL &BB18 auf Tastendruck warten
CALL &BD19 wartet bis Bild aufgebaut ist
CALL &BB16 auf Tastendruck warten
CALL &BB06 auf Tastendruck warten
CALL &BC6E schaltet Tape ein
CALL &BC71 schaltet Tape aus
POKE &A701,&E5:CAT zeigt alle geloeschten Files
POKE &AC00,1 loescht ueberfluessige Zeichen
POKE &AC00,0 schaltet Poke &AC00,1 ab
POKE &AE45,1 Prg. im Speicher schuetzen
POKE &AE45,0 schaltet Poke &AE45,1 ab
CALL &BB03 Tastaturpuffer leeren
CALL &BB9C invertieren
OUT &BC00,2😮UT &BD00,x horiz. Scroll x=Wert (46)
OUT &BC00,7😮UT &BD00,x vertik. Scroll x=Wert (30)
POKE &BB5B,&1B😛OKE &BB5C,&88 Bildschirmausgabe=Drucker
CALL &BB4E Cursor in erste Zeile setzen

jetzt wollte ich wissen ob es noch mehr giebt .
👍 0👎 0
#6
Ja, jede Menge, guck in die beiden Links in den beidem Posts vor Deinem.
Da ist auch das System-RAM erklärt, und damit wird klar was man wo reinPOKEn kann.
TFM of FutureSoft
http://www.FutureOS.de --> Das Betriebssystem FutureOS (Update: 30.05.2026)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)
👍 0👎 0
#7
...oder auch hier (http://www.cantrell.org.uk/david/tech/cpc/cpc-firmware/). Ich benutze die Firmware im PDF Format um schnell eine Sprung- oder Speicheraddresse zu suchen.
👍 0👎 0
#8

CALL &BC00 Farben = normal

Ist &BC02.
👍 0👎 0
#9
Danke almasys für die Info

CALL &BD19   wartet bis Bild aufgebaut ist
geht nicht hat da jemand was anderes

Giebt es auch was in Deutsch Erklärt ?
👍 0👎 0
#10
— FirstDefender
CALL &BD19  wartet bis Bild aufgebaut ist
geht nicht hat da jemand was anderes


Das ist die Routine, die wartet, bis der Bildschirm komplett aufgebaut ist. Die geht ganz sicher. Was meinst du mit "geht nicht"?

— FirstDefender
Giebt es auch was in Deutsch Erklärt ?


In den Posts oben sind zwei Bücher verlinkt, die beide sehr viel und sehr gut erklären. Vor allem das Systembuch ist quasi "die Bibel". Es gibt leider keine Seite die das auf deutsch nochmal extrahiert und zusammengefasst hätte. Die beiden Bücher sind allerdings wirklich empfehlenswert um zu verstehen, wie der CPC so tickt.
👍 0👎 0
#11
— FirstDefender
Giebt es auch was in Deutsch Erklärt ?

— xesrjb
https://www.cpcwiki.eu/imgs/6/6f/CPC_664-6128_intern.pdf
TFM of FutureSoft
http://www.FutureOS.de --> Das Betriebssystem FutureOS (Update: 30.05.2026)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)
👍 0👎 0
#12
— FirstDefender
Danke almasys für die Info

CALL &BD19  wartet bis Bild aufgebaut ist
geht nicht hat da jemand was anderes

Giebt es auch was in Deutsch Erklärt ?

Entspricht auch dem FRAME Befehl in Basic, um flimmerfrei Bildschirmanimationen darstellen zu können.
Last edited by HAL6128 on 2023-02-14 20:46
👍 0👎 0
#13
— FirstDefender
CALL &BD19  wartet bis Bild aufgebaut ist
geht nicht hat da jemand was anderes

Aus menschlicher Sicht ist eine 1/50 Sekunde praktisch sofort vorbei. Und länger wartest Du bei dieser Funktion auf keinen Fall.
👍 0👎 0
#14
Ich hatte mir damals das Buch "Peeks & Pokes zum CPC" von Data Becker gekauft.

Du findest es hier  🙂
https://www.cpcwiki.eu/imgs/9/95/Peeks_und_Pokes_zum_CPC.pdf
👍 0👎 0
#15
Danke für den Hinweis!  :smiley027:
Werde es gleich an unsere Sammlung hängen...

https://cpcwiki.de/forum/index.php/topic,282.0.html
TFM of FutureSoft
http://www.FutureOS.de --> Das Betriebssystem FutureOS (Update: 30.05.2026)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 29.01.2025)
👍 0👎 0
#16
Aeh die ganzen Calls sind im Firmware Handbuch beschrieben. Da steht alles ganz genau drin.

Warum die nicht funktionieren aus Basic, wie Du das Dir vorstellst?

Die meisten Funktionen in der Firmware benötigen Register mit bestimmten Werten belegt (Parameterübergabe via Register). Das ist aus Basic einfach so nicht möglich.

https://www.cpcwiki.eu/imgs/1/18/Schneider_CPC464_Firmware_Handbuch.pdf
👍 0👎 0
#17
Hi, ich habe hier grader per Zufall im ersten Schneider CPC Magazin das Tool Sesam gefunden.

https://acpc.me/ACME/LITTERATURE_REVUES/[ger]GERMAN/[ger][amstrad]CPC_SCHNEIDER_MAGAZIN/01_CPC_MAGAZIN_1985-11+12(acme).pdf

Das Abgedruckte funktioniert nur mit einem 464 (habe aber ne universal disk erstellt).

Es hat aber den Befehl |XCALL mit dem man neben der Systemroutine eben auch noch die Register übergeben kann.

Damit ist dann das Problem mit den Firmware Routinen erledigt und man kann dann einfach das CPC Intern oder das Firmware Guide verwenden und alle Routinen aufrufen.

Beispiele sind auch enthalten, wie z.B. Tape schreiben und lesen mit 4000 Baud, was eben per BASIC nicht geht.

Viel Spaß mit sesam.
📎 sesam.dsk
  • 💾sesam.dsk190.3 KB · 170 downloads
👍 0👎 0

Log in to post