ORG 7000H ;für GP-2019.46 ; CSTS: EQU 000CFH ;csts NZ = Taste gedrt CI: EQU 001CFH ;wartet auf Zeichen WSYNC: EQU 004CFH ;waitsync GDP SPEN: EQU 008CFH ;Set Pen SVPGE EQU 00ACFH ;view Page A: 0..3 SWPGE EQU 00BCFH ;write Page A: 0..3 AKTPGE EQU 00CCFH ;aktuelle Page SPAGE: EQU 00DCFH ;Set akt Page (A) CLRAS: EQU 00FCFH ;clear akt Screen MOVTO: EQU 027CFH ;Move To DRVTO: EQU 028CFH ;Draw To TMOVE: EQU 029CFH ;Turtle Move TSCHR: EQU 02ACFH ;Turtle schreite TS16: EQU 02BCFH ;Turtle schreite 16-tel TDREH: EQU 02CCFH ;Turtle drehe TUP: EQU 02DCFH ;Turtle hoch TDWN: EQU 02ECFH ;Turtle runter TON: EQU 02FCFH ;Stellt Turtle dar FIGUR: EQU 030CFH ;Zeichnet eine Grafik ; WAIT: EQU 032CFH ;Wait ms=HL WAIT1: EQU 033CFH ;wait 100ms ; LINKS: EQU 0 ;linker Rand RECHTS EQU 511 ;rechter Rand UNTEN: EQU 0 ;unterer Rand OBEN: EQU 255 ;oberer Rand ; DECK: EQU 300 ;dreiecks seiten laenge ; ;------------------------------------ START: NOP ; ;------------------------------------- ; zeichnet immer auf Seite 1 ; DEFW CLRAS ;akt. BS loeschen ; DEFW SPEN ;Setpen ; ;--- Rand zeichnen --- ; X: 0..511 / Y: 0..255 ; LD HL, LINKS ;X-Pos LD DE, UNTEN ;Y-Pos DEFW MOVTO ;Move To ; LD HL, RECHTS ;x LD DE, UNTEN DEFW DRVTO ;DrawTo ; LD HL, RECHTS ;x LD DE, OBEN ;y DEFW DRVTO ; LD HL,LINKS LD DE, OBEN DEFW DRVTO ; LD HL,LINKS LD DE,UNTEN DEFW DRVTO ; ; ;----- Schildkroete ------------- ; X: 0..511 / Y: 0..511 ; DEFW TON ;Turtle on ; LD HL, 256 ;x Mitte LD DE, 256 ;y Mitte LD BC,270 ;0= nach rechts DEFW TMOVE ;Turtle Move ; LD HL, 130 ;Schritte DEFW TSCHR ;Turtle schreite ; DEFW CI ; DEFW CLRAS ; ;--- Kreis ------ LD HL, 256 ;x LD DE, 128 ;y LD BC, 0 ; Winkel DEFW TMOVE ;Turtle move ; LD B,72 ;Liniensegmente LOOP: LD HL,200 ; /16 Pixel DEFW TS16 ;Turtle schreite 16-tel ; LD HL, 5 ;5 Grad DEFW TDREH ;Turtle drehe DEFW WAIT1 PUSH BC DEFW SPAGE ;Seite anzeigen POP BC DJNZ LOOP ; ;---------------------- ; LD HL, 256 LD DE, 100 LD BC, 0 DEFW TMOVE ; LD B,180 ; 72 LOOP2: LD HL,95 ;240 DEFW TS16 ; LD HL,2 ; 5 DEFW TDREH ; DEFW WAIT1 PUSH BC DEFW SPAGE POP BC DJNZ LOOP2 ; ;--- Dreieck --- ; LD HL, 110 LD DE, 175 LD BC,0 ;nach rechts DEFW TMOVE ;Startpunkt setzen ; LD HL, DECK DEFW TSCHR ; LD HL, 120 DEFW TDREH LD HL, DECK DEFW TSCHR ; LD HL,120 DEFW TDREH LD HL, DECK DEFW TSCHR ; ;--- Figur ----------- ; LD HL,200 LD DE,250 LD BC,0 DEFW TMOVE ; LD IX,FIG LD B,3 DEFW FIGUR ; ;---------------------------------------- ; DEFW CI RET ; ;--- APOLLO -------------------------- FIG: DEFB 11 DEFB 5,5,5,3,3 DEFB 6,3,3,8 DEFB 3,3,1,1,1 DEFB 7,7,7,7,2,2,4,4,0 ; ˙