Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
| forth:fgforth:kassette [2025/07/14 06:56] – [Z9001] volkerp | forth:fgforth:kassette [2025/07/14 10:10] (aktuell) – [Get/Put Orig. Br.] volkerp | ||
|---|---|---|---|
| Zeile 109: | Zeile 109: | ||
| 14 ' RAM-LOAD IS GET ( n --) | 14 ' RAM-LOAD IS GET ( n --) | ||
| 15 ' RAM-SAVE IS PUT ( von bis --) | 15 ' RAM-SAVE IS PUT ( von bis --) | ||
| + | </ | ||
| + | |||
| + | JUMP macht einen allg. [[z1013: | ||
| + | Es werden die Einsprungadressen aus dem [[z1013: | ||
| + | |||
| + | Mit JUAD wird das Wort JUMP modifiziert. NEW und OLD patchen das Wiederholungsflag; | ||
| + | |||
| + | < | ||
| + | JUMP is | ||
| + | 2A6A: PUSH AF | ||
| + | 2A6B: PUSH BC | ||
| + | 2A6C: PUSH DE | ||
| + | 2A6D: PUSH HL | ||
| + | 2A6E: PUSH IX | ||
| + | 2A70: PUSH IY | ||
| + | 2A72:    LD    IY, | ||
| + | 2A76:    LD    A,4E       ; offs 0Fh A=0 ohne, A=4EH mit Typ und Namensabfrage, | ||
| + | 2A78: CALL FFF4 ; offs 11h FFF1H - JMP LORUF, FFF4H - JMP SARUF | ||
| + | 2A7B: POP IY | ||
| + | 2A7D: POP IX | ||
| + | 2A7F: POP HL | ||
| + | 2A80: POP DE | ||
| + | 2A81: POP BC | ||
| + | 2A82: POP AF | ||
| + | 2A83: JP 0422 | ||
| + | 2A86: END | ||
| + | |||
| + | nb: Aus Forth-Sicht müsste man nicht alle Register retten; BC und IY reichen. | ||
| + | |||
| </ | </ | ||
| Zeile 276: | Zeile 305: | ||
| < | < | ||
| - | CBOS: | + | CBOS: Aufruf Sprungverteiler, | 
| - | 2A62  E1                | + | 2A62  E1                | 
| 2A63  C5                | 2A63  C5                | ||
| 2A64  FD E5            PUSH    IY       | 2A64  FD E5            PUSH    IY       | ||
| 2A66  4D                | 2A66  4D                | ||
| - | 2A67  CD 05 00          | + | 2A67  CD 05 00          | 
| 2A6A  FD E1            POP      | 2A6A  FD E1            POP      | ||
| 2A6C  C1                | 2A6C  C1                | ||
| 2A6D 26 00 LD H,00H | 2A6D 26 00 LD H,00H | ||
| - | 2A6F  6F                | + | 2A6F  6F                | 
| - | 2A70  E5                | + | 2A70  E5                | 
| - | 2A71  ED 62            SBC      | + | 2A71  ED 62            SBC      | 
| - | 2A73  E5                | + | 2A73  E5                | 
| 2A74  C3 22 04          | 2A74  C3 22 04          | ||
| - | MAREK:  | + | MAREK:  | 
| 2A81  C5                | 2A81  C5                | ||
| 2A82  FD E5            PUSH    IY       | 2A82  FD E5            PUSH    IY       | ||
| - | 2A84  CD 59 FF          | + | 2A84  CD 59 FF          | 
| - | 2A87  CD E3 FA          | + | 2A87  CD E3 FA          | 
| 2A8A  FD E1            POP      | 2A8A  FD E1            POP      | ||
| 2A8C  C1                | 2A8C  C1                | ||