.z80 .phase 1500h caos equ 0f003h winan equ 0b79ch curso equ 0b7a0h color equ 0b7a3h arg1 equ 0b782h farb equ 0b7d6h enter equ 13 cuup equ 11 cudo equ 10 brk equ 3 null equ 0 trennz equ 0ffh max1 equ 36h col1 equ 7 lzahl1 equ 86h ;Zahl der Linien Bild1 max2 equ 0b2h col2 equ 20h max3 equ 0b1h lzahl3 equ 0cah ;Zahl der Linien Bild2 max4 equ 0b1h lzahl4 equ 0bah ;Zahl der Linien Bild3 max5 equ 0b1h lzahl5 equ 8bh ;Zahl der Linien Bild 4 max6 equ 0b1h lzahl6 equ 0d8h ;Zahl der Linien Bild 5 max7 equ 34h lzahl7 equ 0 max8 equ 32h lzahl8 equ 0 max9 equ 38h lzahl9 equ 0 max10 equ 0b1h max11 equ 0b1h max: dw 0 tabm: dw 0 grafm: dw 0 merk: db 1,31h colorm: db 0 time: dw 1,2000h savm: db 6,0 lzahl: db 0 ;Bit 7=0 => keine Grafik statusd1: ds 1,30h ;0 or 1 statusd2: ds 1,30h steuwm: ds 1,0 db 7fh,7fh,'CTC',1 start: call maxfen xor a ld (lzahl),a ld hl,txt1 ;Bildschirm loeschen call zkout ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab1+1 ;Tabelle vorladen ld (tabm),hl ld hl,tab1 push hl call menout ;Hauptmenu ausgeben pop hl ld a,(hl) ld (max),a ;Zahl der UP's taste: call setfen ;1. Balken setzen taste1: ld a,(ix+13) or a jr z,taste1 call resfen cp brk jr z,brkm ;ein Menu zurueck cp cuup call z,decm cp cudo call z,incm cp enter call z,entm cp '1' jr c,taste ;< "1" cp 3ah jr nc,taste ;> "9" call auswert call setfen jr taste1 ret brkm: ret ;......................................... stup11: call maxfen call clsfen ld a,lzahl1 ld (lzahl),a ld hl,lta1 ld (grafm),hl ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab2+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab2 menu: call menout ;Haupltmenu ausgeben call setfen stbrk: ld a,(ix+13) or a jr z,stbrk cp brk jr nz,stbrk pop hl ld hl,start push hl ret ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup12: call maxfen call clsfen ld a,lzahl3 ld (lzahl),a ld hl,lta2 ; ld (grafm),hl ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab3+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab3 jr menu ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup13: call maxfen call clsfen ld a,lzahl4 ld (lzahl),a ld hl,lta3 ; ld (grafm),hl ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab4+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab4 menu1: jr menu ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup14: call maxfen call clsfen ld a,lzahl5 ld (lzahl),a ld hl,lta4 ; ld (grafm),hl ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab5+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab5 jr menu1 ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup15: call maxfen call clsfen ld a,lzahl6 ld (lzahl),a ld hl,lta5 ; ld (grafm),hl ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab6+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab6 jr menu1 ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ;Aktivit{ten stup16: call maxfen call clsfen ld a,lzahl7 ld (lzahl),a ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab7+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab7 push hl call menout ;Hauptmenu ausgeben pop hl ld a,(hl) ld (max),a ;Zahl der UP's call taste pop hl ld hl,start push hl ret ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup17: call maxfen call clsfen ld a,lzahl8 ld (lzahl),a ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab8+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab8 push hl call menout ;Hauptmenu ausgeben pop hl ld a,(hl) ld (max),a ;Zahl der UP's call taste pop hl ld hl,start push hl ret ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup18: call maxfen call clsfen ld a,lzahl9 ld (lzahl),a ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab9+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab9 push hl call menout ;Hauptmenu ausgeben pop hl ld a,(hl) ld (max),a ;Zahl der UP's call taste pop hl ld hl,start push hl ret ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup19: call maxfen call clsfen xor a ld (lzahl),a ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab10+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab10 jp menu ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< stup20: call maxfen call clsfen xor a ld (lzahl),a ld a,31h ;mit "1" vorladen ld (merk),a ld hl,tab11+1 ;Tabelle2 vorladen ld (tabm),hl ld hl,tab11 push hl call menout ;Hauptmenu ausgeben pop hl ld a,(hl) ld (max),a ;Zahl der UP's call taste pop hl ld hl,start push hl ret ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< decm: ld a,(merk) cp 31h jr z,ok dec a ld (merk),a jr ok incm: ld hl,max ld b,(hl) ld a,(merk) cp b jr z,ok inc a ld (merk),a ok: call pause call setfen or a ld a,0ffh ret ;.................................................... entm: call such ld e,(hl) inc hl ld d,(hl) ex de,hl ld e,(hl) inc hl ld d,(hl) ex de,hl call jphl jr ok jphl: jp (hl) ;.................................................... such: ld a,(merk) ;UP-Nummer ld hl,(tabm) ;aktuelle Tabelle sub 30h ld b,a dec a jr z,such2 such1: call nusuch ;Null suchen djnz such1 ret such2: call nusuch ret ;...................................................... nusuch: ld a,(hl) inc hl or a ret z jr nusuch ;....................................................... auswert: ld hl,max cp (hl) jr c,ausw ;eingegebene Zahl <:ok jr z,ausw ;eingegebene Zahl =:ok ld a,(hl) ausw: ld (merk),a jr ok ;.......................... zkout: ld a,(hl) or a ret z call caos db 0 inc hl jr zkout akout: ld hl,1010h ld (0b7a0h),hl ld a,(merk) call caos db 1ch ret pause: push hl push af ld hl,2000h pause1: dec hl ld a,h or l jr nz,pause1 pop af pop hl ret ;...................................................... ;PE: hl:=Anfang der Tabelle ; menout: push de push bc push af ld a,(hl) ;Zahl der UP's laden ld (max),a inc hl ;Tabellenzeiger erhoehen menout1: ld de,winan ldi ldi ldi ldi ld de,0 ld (curso),de call zkout ;Zeichenkette ausgeben inc hl inc hl inc hl ld a,(hl) cp trennz jr nz,menout1 pop af pop bc pop de ret ;.................................................... ;PE: keine ;VR: keine resfen: push af push bc push de push hl ld a,(merk) ;Welches Fenster aktuell? ld hl,(tabm) call calc ;Adresse in zugehoeriger ld de,winan ;Tabelle errechnen ldi ldi ldi ldi ld a,(colorm) ld (color),a call clsfen ld de,(curso) push de ld de,0 ld (curso),de call zkout ;alten Text wieder ausgeben pop de ld (curso),de pop hl pop de pop bc pop af ret ;..................................................... ;PE: keine ;VR keine setfen: push af push bc push de push hl ld hl,(tabm) dec hl ld a,(hl) ;max nach a inc hl bit 7,a jr nz,setfen2 ld a,(merk) ;Welches Fenster aktuell? call calc ;Adresse in zugehoeriger ld de,winan ;Tabelle errechnen ldi ldi ldi ldi ld a,(color) ld (colorm),a ld a,col1 ;Farbe zum Fenster ld (color),a call clsfen ;Fenster mit neuer Farbe loeschen ld de,0 ld (curso),de call zkout ;alten Text wieder ausgeben setfen2: ld hl,(grafm) ld a,(lzahl) ld b,a bit 7,a ;Grafik vorgesehen jr z,setfen1 call grafik setfen1: ld a,(colorm) ld (color),a pop hl pop de pop bc pop af ret ;<<<<<<<<<<<<<<<<<<<<<<<<<< ;PE: hl:=tabX+1 ; a:=(merk) ;PA: hl:=Adresse in Tabelle, wo fenan steht calc: sub 31H ld b,a ;UP-Nummer or a ret z calc1: ld a,(hl) or a ;=null? jr z,calc2 inc hl jr calc1 calc2: inc hl inc hl inc hl djnz calc1 ret ;...................................................... clsfen: ld a,12 call caos nop ret ;................................................... chand1: ld hl,bitd1 jr change chand2: ld hl,bitd2 jr change chanb0: ld hl,bitb0 jr change chanb1: ld hl,bitb1 jr change chanb2: ld hl,bitb2 jr change chanb3: ld hl,bitb3 jr change chanb4: ld hl,bitb4 jr change chanb5: ld hl,bitb5 jr change chanb6: ld hl,bitb6 jr change chanb7: ld hl,bitb7 change: ld a,(hl) cp 31h ;null oder eins? jr z,set0 ld a,31h jr set1 set0: ld a,30h set1: ld (hl),a call rechi ld a,b ld (steuwm),a rr a rr a rr a rr a and 0fH ;oberes Nibble weg add a,30h ld (steuw+1),a ld a,(steuwm) and 0fh add a,30h ld (steuw+2),a call savfen call maxfen ld hl,2002h ld (curso),hl ld a,(steuwm) call caos db 1ch call loafen ret rechi: xor a ;Akku:=0 ld b,a ;b:=a=0 ld a,(bitb7) call manipu ld a,(bitb6) call manipu ld a,(bitb5) call manipu ld a,(bitb4) call manipu ld a,(bitb3) call manipu ld a,(bitb2) call manipu ld a,(bitb1) call manipu ld a,(bitb0) manipu: sub 30h ;0 or 1 or b ld a,b rl b ret ;**************************************************** ;Eroeffnungsbild tab1: db max1 ;Zahl der Fenster/UP's db 5,3 ;Anfang Fenster db 20,2 ;Fenstergroesse db 'Logisches Schaltbild' db ' Funktion' db null dw sttab11 ;Startadresse db 5,9 db 22,2 db 'Betriebsart Zaehler ' db 'Betriebsart Zeitgeber' db null dw sttab12 db 5,13 db 16,2 db 'Prioritaetskette' db ' Kanalauswahl' db null dw sttab13 db 5,17 db 20,1 db 'Kanalsteuerregister' db null dw sttab14 db 5,21 db 16,1 db 'Blockschaltbild' db null dw sttab15 db 5,25 db 20,1 db 'Programmierbeispiel' db null dw sttab16 db trennz ;........................................................... ;Bild 1 tab2: db max2 db 1,2 db 17,28 db 10,13 db ' Log. Schaltbild ' db 10,13,10 db ' <-> CTC ' db ' -D0 ' db ' -D1 ' db ' -D2 ' db ' -D3 ' db ' -D4 ' db ' -D5 ' db ' -D6 ' db ' -D7 ' db '-*CS ' db ' -KS0 ' db ' -KS1 ' db '-*M1 ' db '-*IORQ ' db '-*RD ' db ' -IEI IEO- ' db ' -C/T0 Z/T0- ' db ' -C/T1 Z/T1- ' db ' -C/T2 Z/T2- ' db ' -C/T3 ' db '-*REST ' db ' - C INT*-' db null dw sttab21 db 19,2 db 20,28 db ' Funktion ' db 10,13,10,10 db 'D0-D7 Datenbus 8-Bit' db '/CS Chip-Select ' db 'KS1/KS0 Kanal-Select' db '/M1 Masch.Zyklus ' db '/IORQ Int.Outp.Requ.' db '/RD Read ' db '/RESET Ruecksetzleit' db 'C Clock Systemtakt ' db '/INT Int.Anforderung' db 'IEI Int.Freig. Eing.' db 'IEO Int.Freig. Ausg.' db 'C/TRG 0-3 Externer ' db ' Takt/Zeitgeber' db ' /Trigger ' db 'ZC/T0 0-2 Nulldurch-' db ' gangssignal ' db ' Zeitgeberleitg' db null dw sttab22 db trennz ;........................................................... ;Bild 2 tab3: db max3 db 1,1 db 38,30 db ' Betriebsart Zaehler ' db 13,10,10 db ' Kanalsteuer- Zeitkonstanten- ' db ' register register ' db ' Logik (8 Bit) Register (8 Bit) ' db 13,10 db 'int.Bus ' db 13,10 db ' C/TRG Rueckwaertszaeh ZC/T0 ' db 'externer (8 Bit) Null- ' db 'Takteing. Sig. ' db 13,10,10 db ' Betriebsart Zeitgeber ' db 13,10,10 db 'tc*p*TC tc-Systemtakt p-Vorteiler ' db ' TC-programmierte Zeitkonst. ' db 13,10 db ' Kanalsteuer- Zeitkonstanten- ' db ' register register ' db 13,10 db 'int.Bus ' db 13,10 db 'C Vorteiler Rueckwaertszaeh ZC/T0' db ' Ausg.' db 'C/TRG ' db 'Zeitgeber-Trigger-Eingang ' db null dw sttab31 db trennz ;.......................................................... ;Bild 3 tab4: db max4 db 1,1 db 38,30 db 10,13 db ' Prioritaetskette der CTC ' db 10,13,10 db 'IEI IEI IEO IEI IEO ' db ' K1 K2 ' db 10,13,10,10 db ' IEI IEO IEI IEO IEO ' db ' K3 K4 ' db 10,13,10 db ' Kanalauswahl ' db 10,13,10 db ' D7 D6 D5 D4 D3 D2 D1 D0 ' db 10,13 db ' V7 V6 V5 V4 V3 X X 0 ' db ' Kanal 0 0 0 ' db ' Kanal 1 0 1 ' db ' Kanal 2 1 0 ' db ' Kanal 3 1 1 ' db 10,13 db ' 16 Bit Zeiger ' db 10,13 db ' I-Registerinhalt CTC-Kanal ' db ' CPU ( 8 Bit ) 7 Bit 0 ' db null dw sttab41 db trennz ;............................................. ;Bild 4 tab5: db max5 db 1,1 db 38,30 db 10,13 db 'Format Kanalsteuerregister ' db 10,13 db 'ueber CPU Kanal-Port-Adresse D0 = 1 ' db 'Register bestimmt Betriebsart und ' db ' Parameter des Kanals' db 10,13,10 db ' D7 D6 D5 D4 D3 D2 D1 D0 ' db 10,13,10 db 'D0 = 1 1 - 1 festgelegt ' db 10,13 db 'D1 = Rueckstellen 0 - nicht ' db ' 1 - rueckstellen ' db 'D2 = Zeitkonstante 0 - folgt nicht ' db ' 1 - folgt ' db 'D3 = Zeitg./Trigger 0 - C/TRG passiv ' db ' 1 - C/TRG aktiv ' db 'D4 = Triggerflanke 0 - negativ ' db ' 1 - positiv ' db 'D5 = Zeitg,/Vorteil. 0 - Faktor 16 ' db ' 1 - Faktor 256 ' db 'D6 = Betr.artenwahl 0 - Zeitgeber ' db ' 1 - Zaehler ' db 'D7 = Inter.freigabe 0 - gesperrt ' db ' 1 - freigegeben ' db null dw sttab51 db trennz ;.............................................. ;Bild 5 tab6: db max6 db 1,1 db 38,30 db 10,13 db ' Blockschaltbild U 857 CTC ' db 10,13 db ' 5N int. ZC/T0 ' db ' 5P C Logik K0 C/TRG0' db 10,13 db 'DB ZC/T1 ' db 'StB int.Bus K1 C/TRG1' db 10,13 db ' ZC/T2 ' db ' int. K2 C/TRG2' db ' Logik ' db 10,13 db ' int.Leitung K3 C/TRG3' db 10,13 db ' Blockschaltbild eines Kanals ' db 10,13 db ' Kanal Zeitkonst. ' db ' steuerreg. register ' db ' 8 Bit 8 Bit ' db 10,13 db 'int.Bus ' db 10,13 db 'C Vorteiler Rueckwaer Nullsig' db ' 8 Bit zaehler ZC/T ' db ' 8 Bit ' db 10,13 db 'ext.Takt/Zeitge. ' db 'C/TRG ' db null dw sttab61 db trennz ;.............................................. ;Bild 6 tab7: db max7 db 2,5 db 13,1 db 'Kanalauswahl' db null dw sttab71 db 2,10 db 19,1 db 'Steuerwortauswahl' db null dw sttab72 db 2,15 db 10,1 db 'Interrupt' db null dw sttab73 db 2,20 db 21,1 db 'Programmierbeispiel' db null dw sttab74 db trennz ;Kanalauswahl tab8: db max8 db 2,5 db 19,1 db 'Datenbit 1 (D1) ' bitd1: db '0' db null dw sttab81 db 2,10 db 19,1 db 'Datenbit 2 (D2) ' bitd2: db '0' db null dw sttab82 db 2,15 db 35,1 db 'Datenbit 0 (D0) wird auf 0 gesetzt' db null dw sttab83 db 2,28 db 33,2 db 'Auswahl durch Enter-Taste ' db 'Abbruch und Uebernahme durch BRK' db null dw sttab83 db trennz tab9: db max9 db 2,2 db 19,1 db 'Datenbit 0 (D0) ' bitb0: db '0' db null dw sttab90 db 2,4 db 19,1 db 'Datenbit 1 (D1) ' bitb1: db '0' db null dw sttab91 db 2,6 db 19,1 db 'Datenbit 2 (D2) ' bitb2: db '0' db null dw sttab92 db 2,8 db 19,1 db 'Datenbit 3 (D3) ' bitb3: db '0' db null dw sttab93 db 2,10 db 19,1 db 'Datenbit 4 (D4) ' bitb4: db '0' db null dw sttab94 db 2,12 db 19,1 db 'Datenbit 5 (D5) ' bitb5: db '0' db null dw sttab95 db 2,14 db 19,1 db 'Datenbit 6 (D6) ' bitb6: db '0' db null dw sttab96 db 2,16 db 19,1 db 'Datenbit 7 (D7) ' bitb7: db '0' db null dw sttab97 db 2,28 db 33,2 db 'Auswahl durch Enter-Taste ' db 'Abbruch und Uebernahme durch BRK' db null dw sttab83 db trennz tab10: db max10 db 2,2 db 38,30 db ' interrupt' db null dw sttab101 dw trennz tab11: db max11 db 1,2 db 38,30 db ' Programmierbeispiel' db 13,10,10 db ' .Z80 ' db ' PHASE START ' db 'START EQU ' mstart: db '1500H ' db 'KANAL0 EQU 0 ' db 'ITABCTC EQU 01D8H ' db 'KANALX EQU ' kanal: db '0 ' db 'ZEITK EQU ' zeitk: db '0FFH ' db 'STEUWORT EQU ' steuw: db '0A7H ' db 'ITAKAN EQU ITABCTC+(2*KANALX) ' db 13,10,10 db 'INIT: DI ;CPU Int. sperr.' db ' LD HL,SERV ' db ' LD (ITAKAN),HL ;Vektor eintr. ' db ' LD A,LOW(ITAKAN) ' db ' OUT (KANAL0),A ' db ' LD A,STEUWORT ' db ' OUT (KANALX),A ' db ' LD A,ZEITK ' db ' OUT (KANALX),A ' db ' EI ' db ' RET ' db 13,10,10 db 'SERV: EI ' db ' RETI ' db null dw sttab111 db trennz ;........................................................... sttab11: dw stup11 ;logisches Schaltbild sttab12: dw stup12 ;Z{hler/Zeitgeber sttab13: dw stup13 ;Priorit{tskette sttab14: dw stup14 ;Kanalsteuerregister sttab15: dw stup15 ;Blockschaltbild sttab16: dw stup16 ;Actionwindow sttab21: dw return sttab22: dw return sttab31: dw return sttab41: dw return sttab51: dw return sttab61: dw return sttab71: dw stup17 ;Kanalauswahl sttab72: dw stup18 ;Steuerwort sttab73: dw stup19 ;Interrupt sttab74: dw stup20 ;Beispiel sttab81: dw chand1 sttab82: dw chand2 sttab83: dw return ;nur Meldung sttab90: dw chanb0 sttab91: dw chanb1 sttab92: dw chanb2 sttab93: dw chanb3 sttab94: dw chanb4 sttab95: dw chanb5 sttab96: dw chanb6 sttab97: dw chanb7 sttab101: dw return sttab111: dw return ;............................................................ return: ret ;........................................................... savfen: exx ld hl,winan ld de,savm savf1: ld bc,6 ldir exx ret loafen: exx ld hl,savm ld de,winan jr savf1 maxfen: ld de,winan ld hl,mafeta ldi ldi ldi ldi ret mafeta: db 0,0,40,32 txt1: db 12,13,10,0 ;********************************************************** ;PE: b:= Anzahl der zu zeichnenden Linien ; hl:= Parametertabelle grafik: ld de,arg1 ;0b782h res 7,b lin1: push bc push de ld bc,8 ldir ld a,78H ld (farb),a ;0b7d6 push hl call caos db 3eh pop hl pop de pop bc djnz lin1 ret lta1: db 21,0,28,0,130,0,28,0 db 21,0,28,0,21,0,215,0 db 130,0,215,0,21,0,215,0 db 130,0,215,0,130,0,28,0 db 59,0,28,0,59,0,215,0 db 92,0,28,0,92,0,215,0 lta2: db 28,0,36,0,28,0,52,0 db 28,0,52,0,108,0,52,0 db 108,0,52,0,108,0,36,0 db 28,0,36,0,108,0,36,0 db 132,0,36,0,132,0,52,0 db 132,0,52,0,5,1,52,0 db 5,1,52,0,5,1,36,0 db 132,0,36,0,5,1,36,0 db 5,1,44,0,15,1,44,0 db 15,1,44,0,11,1,46,0 db 15,1,44,0,11,1,42,0 db 18,0,44,0,28,0,44,0 db 50,0,28,0,120,0,28,0 db 120,0,28,0,120,0,40,0 db 120,0,40,0,132,0,40,0 db 108,0,48,0,132,0,48,0 db 132,0,48,0,128,0,46,0 db 132,0,48,0,128,0,50,0 db 28,0,44,0,24,0,46,0 db 28,0,44,0,24,0,42,0 db 132,0,40,0,128,0,42,0 db 132,0,40,0,128,0,38,0 db 12,0,68,0,12,0,92,0 db 12,0,92,0,114,0,92,0 db 114,0,92,0,114,0,68,0 db 12,0,68,0,114,0,68,0 db 132,0,68,0,132,0,92,0 db 132,0,92,0,255,0,92,0 db 255,0,92,0,255,0,68,0 db 132,0,68,0,255,0,68,0 db 66,0,58,0,86,0,58,0 db 86,0,58,0,90,0,52,0 db 90,0,52,0,94,0,58,0 db 94,0,58,0,182,0,58,0 db 182,0,58,0,186,0,52,0 db 186,0,52,0,190,0,58,0 db 190,0,58,0,190,0,62,0 db 190,0,62,0,186,0,68,0 db 186,0,68,0,182,0,62,0 db 182,0,62,0,94,0,62,0 db 94,0,62,0,90,0,68,0 db 90,0,68,0,86,0,62,0 db 86,0,62,0,66,0,62,0 db 108,0,156,0,108,0,180,0 db 108,0,180,0,236,0,180,0 db 236,0,180,0,236,0,156,0 db 108,0,156,0,236,0,156,0 db 76,0,168,0,108,0,168,0 db 108,0,168,0,104,0,170,0 db 108,0,168,0,104,0,166,0 db 236,0,168,0,255,0,168,0 db 255,0,168,0,251,0,170,0 db 255,0,168,0,251,0,166,0 db 12,0,196,0,12,0,228,0 db 12,0,228,0,124,0,228,0 db 124,0,228,0,124,0,196,0 db 12,0,196,0,124,0,196,0 db 140,0,196,0,140,0,228,0 db 140,0,228,0,13,1,228,0 db 13,1,228,0,13,1,196,0 db 140,0,196,0,13,1,196,0 db 68,0,186,0,178,0,186,0 db 178,0,186,0,178,0,180,0 db 186,0,180,0,186,0,190,0 db 186,0,190,0,182,0,196,0 db 182,0,196,0,178,0,190,0 db 178,0,190,0,96,0,190,0 db 96,0,190,0,92,0,196,0 db 92,0,196,0,88,0,190,0 db 88,0,190,0,68,0,190,0 db 222,0,196,0,222,0,186,0 db 222,0,186,0,226,0,180,0 db 226,0,180,0,230,0,186,0 db 230,0,186,0,230,0,196,0 lta3: db 12,0,20,0,12,0,44,0 db 12,0,44,0,255,0,44,0 db 12,0,20,0,255,0,20,0 db 148,0,20,0,148,0,44,0 db 235,0,20,0,235,0,44,0 db 255,0,20,0,255,0,44,0 db 28,0,108,0,220,0,108,0 db 28,0,124,0,220,0,124,0 db 28,0,108,0,28,0,124,0 db 52,0,108,0,52,0,124,0 db 76,0,108,0,76,0,124,0 db 100,0,108,0,100,0,124,0 db 124,0,108,0,124,0,124,0 db 148,0,108,0,148,0,124,0 db 172,0,108,0,172,0,124,0 db 196,0,108,0,196,0,124,0 db 220,0,108,0,220,0,124,0 db 28,0,156,0,100,0,156,0 db 28,0,180,0,100,0,180,0 db 28,0,156,0,28,0,180,0 db 100,0,156,0,100,0,180,0 db 132,0,156,0,204,0,156,0 db 132,0,180,0,204,0,180,0 db 132,0,156,0,132,0,180,0 db 204,0,156,0,204,0,180,0 db 60,0,196,0,132,0,196,0 db 60,0,220,0,132,0,220,0 db 60,0,196,0,60,0,220,0 db 132,0,196,0,132,0,220,0 db 164,0,196,0,236,0,196,0 db 164,0,220,0,236,0,220,0 db 164,0,196,0,164,0,220,0 db 236,0,196,0,236,0,220,0 db 34,0,212,0,60,0,212,0 ; db 60,0,212,0,56,0,214,0 db 60,0,212,0,56,0,210,0 db 132,0,212,0,164,0,212,0 db 164,0,212,0,160,0,214,0 db 164,0,212,0,160,0,210,0 db 236,0,212,0,252,0,212,0 db 250,0,212,0,246,0,214,0 db 250,0,212,0,246,0,210,0 db 252,0,212,0,252,0,188,0 db 252,0,188,0,12,0,188,0 db 92,0,188,0,96,0,190,0 ;172 db 92,0,188,0,96,0,186,0 db 172,0,188,0,176,0,190,0 db 172,0,188,0,176,0,186,0 db 12,0,188,0,12,0,172,0 db 12,0,172,0,28,0,172,0 db 28,0,172,0,24,0,174,0 db 28,0,172,0,24,0,170,0 db 100,0,172,0,132,0,172,0 db 132,0,172,0,128,0,174,0 db 132,0,172,0,128,0,170,0 db 204,0,172,0,230,0,172,0 db 230,0,172,0,226,0,174,0 db 230,0,172,0,226,0,170,0 lta4: db 32,0,172,0,32,0,188,0 db 32,0,188,0,33,1,188,0 db 33,1,188,0,33,1,172,0 db 32,0,172,0,33,1,172,0 db 64,0,172,0,64,0,188,0 db 96,0,172,0,96,0,188,0 db 128,0,172,0,128,0,188,0 db 160,0,172,0,160,0,188,0 db 192,0,172,0,192,0,188,0 db 224,0,172,0,224,0,188,0 db 1,1,172,0,1,1,188,0 lta5: db 50,0,20,0,136,0,20,0 db 136,0,20,0,136,0,44,0 db 136,0,44,0,148,0,44,0 db 148,0,44,0,144,0,46,0 db 148,0,44,0,144,0,42,0 db 44,0,36,0,44,0,68,0 db 44,0,68,0,124,0,68,0 db 124,0,68,0,124,0,36,0 db 44,0,36,0,124,0,36,0 db 148,0,36,0,148,0,68,0 db 148,0,68,0,228,0,68,0 db 228,0,68,0,228,0,36,0 db 148,0,36,0,228,0,36,0 db 18,0,60,0,44,0,60,0 db 44,0,60,0,40,0,62,0 db 44,0,60,0,40,0,58,0 db 124,0,60,0,148,0,60,0 db 148,0,60,0,144,0,62,0 db 148,0,60,0,144,0,58,0 db 228,0,60,0,244,0,60,0 db 244,0,60,0,240,0,62,0 db 244,0,60,0,240,0,58,0 db 44,0,84,0,44,0,116,0 db 44,0,116,0,128,0,116,0 db 128,0,116,0,128,0,84,0 db 128,0,84,0,44,0,84,0 db 148,0,84,0,148,0,116,0 db 148,0,116,0,240,0,116,0 db 240,0,116,0,240,0,84,0 db 240,0,84,0,148,0,84,0 db 66,0,74,0,170,0,74,0 db 170,0,74,0,170,0,68,0 db 178,0,68,0,178,0,78,0 db 178,0,78,0,174,0,84,0 db 174,0,84,0,170,0,78,0 db 170,0,78,0,88,0,78,0 db 88,0,78,0,84,0,84,0 db 84,0,84,0,80,0,78,0 db 80,0,78,0,66,0,78,0 db 198,0,84,0,198,0,74,0 db 198,0,74,0,202,0,68,0 ;----- db 202,0,68,0,206,0,74,0 db 206,0,74,0,206,0,84,0 db 52,0,172,0,52,0,204,0 db 52,0,204,0,100,0,204,0 db 100,0,204,0,100,0,172,0 db 52,0,172,0,100,0,172,0 db 120,0,148,0,120,0,172,0 db 120,0,172,0,168,0,172,0 db 168,0,172,0,168,0,148,0 db 120,0,148,0,168,0,148,0 db 120,0,204,0,120,0,228,0 db 120,0,228,0,168,0,228,0 db 168,0,228,0,168,0,204,0 db 120,0,204,0,168,0,204,0 db 192,0,132,0,192,0,148,0 db 192,0,148,0,216,0,148,0 db 216,0,148,0,216,0,132,0 db 192,0,132,0,216,0,132,0 db 192,0,156,0,192,0,172,0 db 192,0,172,0,216,0,172,0 db 216,0,172,0,216,0,156,0 db 192,0,156,0,216,0,156,0 db 192,0,180,0,192,0,196,0 db 192,0,196,0,216,0,196,0 db 216,0,196,0,216,0,180,0 db 192,0,180,0,216,0,180,0 db 192,0,204,0,192,0,220,0 db 192,0,220,0,216,0,220,0 db 216,0,220,0,216,0,204,0 db 192,0,204,0,216,0,204,0 db 100,0,152,0,105,0,157,0 db 105,0,157,0,140,0,157,0 db 140,0,157,0,140,0,200,0 db 140,0,200,0,144,0,204,0 db 144,0,204,0,148,0,200,0 db 148,0,200,0,148,0,157,0 db 148,0,157,0,172,0,157,0 db 172,0,157,0,172,0,216,0 db 172,0,216,0,188,0,216,0 db 188,0,216,0,192,0,212,0 db 192,0,212,0,188,0,208,0 db 188,0,208,0,180,0,208,0 db 180,0,208,0,180,0,192,0 db 180,0,192,0,188,0,192,0 db 188,0,192,0,192,0,188,0 db 192,0,188,0,188,0,184,0 db 188,0,184,0,180,0,184,0 ;---------- end