AORG >A000 DEF START REF VMBR,VSBW,VWTR,VMBW,KSCAN,DSRLNK TEXT0 TEXT ' Load IFF-Standard from RS232/3 ' TEXT ' ' TEXT ' 1: 1200 Baud ' TEXT ' 2: 9600 Baud ' TEXT ' 3: 19200 Baud ' TEXT ' 4: 38400 Baud ' TEXT ' 5: Leaving Read-Routine ' TEXT ' ' TEXT ' 8 Databits, No Parity, 1 Stop ' TEXT1 TEXT 'Running.........' TEXT2 TEXT ' Form detected ' TEXT3 TEXT ' Bitmap found ' TEXT4 TEXT ' Color painted ' TEXT5 TEXT ' CRNG skipped ' TEXT6 TEXT ' Body reached !' TEXT7 TEXT ' Menue ' TEXT ' ===== ' TEXT ' ' TEXT ' Mode Width x Height ' TEXT ' ' TEXT ' 1: 512 x 424 ' TEXT ' 2: 512 x 212 ' TEXT ' 3: 256 x 424 ' TEXT ' 4: 256 x 212 ' TEXT ' ' TEXT ' U: Upper Color-Codes ' TEXT ' D: Lower Color-Codes ' TEXT ' ' TEXT ' L: Load form Disk 3 ' TEXT ' S: Save on Disk 3 ' TEXT ' ' TEXT ' Left Mousebotton: New Read ' TEXT ' Right Mousebotton: Quit ' TEXT ' ' TEXT ' ' TEXT ' ' TEXT ' ' TEXT ' ' TEXT ' Pressfor Action ! ' EVEN FORM BSS >C * 4 BYTES 'FORM',LANEGE UND 'ILBM' BMHD BSS >1C * IMMER 28 BYTES -> 'BMHD' + LAENGE +20 BYTES CMAP BSS >68 * ===== MAX 32*3 +8 BYTES 'CMAP'+LAENGE CAMG BSS >40 * AWAY, INKORREKT, URSPRUENGLICH NICHT VORGESEHEN CRNG BSS >10 * KOMMT AUS HOLD UND MODIFY CRNG2 BSS >10 * IMMER JEWEILS 16 BYTES ! CRNG3 BSS >10 * ===== CRNG4 BSS >10 * MAXILMAL VIER SAVETY BSS >100 BODY BSS >8 * WESENTLICH LAENGER, ABER EIGENTLICHER BODY INS GRAM X BSS >2 * X-VAR FUER PIXEL Y BSS >2 * Y-VAR FUER PIXEL XOFSET BSS >2 * OFFSET FUER BILD-MITTE YOFSET BSS >2 * DITO BYTE BSS >2 * BYTE-ZAEHLER IN EINEM GRAM-BLOCK COLOR BSS >2 * FARB-PARAMTER FUER PIXEL SETON BSS >2 * FLAG FUER PIXEL DIRECT BSS >2 * MYWS BSS >20 * WORKSPACE REGISTER *------------------------------------------------------------------------------+ START LWPI MYWS LI 12,>1700 SBO 3 * GRAM AUS SBO 5 * VOLLER BEREICH BEGIN BLWP @FADEOU BLWP @EA BLWP @FADEIN CLR @DIRECT LI 0,>20 LI 1,TEXT0 LI 2,>120 BLWP @VMBW CLR @>8374 TASTE BLWP @KSCAN MOVB @>837C,@>837C JEQ TASTE MOVB @>8375,1 SRL 1,8 CI 1,>35 JNE NOREAD B @PARTWO NOREAD CI 1,>31 JLT TASTE CI 1,>34 JGT TASTE AI 1,>FFCF SLA 1,1 BL @RS232 * INIT DER RS232/3 SLA 1,4 AI 1,>62 MOV 1,0 LI 1,>2D00 BLWP @VSBW INC 0 LI 1,>3E00 BLWP @VSBW LI 0,>180 LI 1,TEXT1 LI 2,>10 BLWP @VMBW AI 0,>20 LI 1,TEXT2 BLWP @VMBW AI 0,>20 LI 1,TEXT3 BLWP @VMBW AI 0,>20 LI 1,TEXT4 BLWP @VMBW AI 0,>20 LI 1,TEXT5 BLWP @VMBW AI 0,>20 LI 1,TEXT6 BLWP @VMBW SETO @DIRECT *--------------------------------------------+ * EINLESEN DER DATEN ! ! *--------------------------------------------+ LI 3,FORM ! NOFORM BL @EMPFAN ! JMP NOFORM ! MOVB 5,*3 ! CI 5,>4600 ! JNE NOFORM * "F" ERKANNT ?! INC 3 ! LI 4,>B ! BL @READ ! LI 0,>1A0 ! LI 1,>2E00 ! BLWP @VSBW ! *--------------------------------------------+ LI 3,BMHD ! NOBMHD BL @EMPFAN ! JMP NOBMHD ! MOVB 5,*3 ! CI 5,>4200 ! JNE NOBMHD * "B" ERKANNT ?! INC 3 ! LI 4,>7 ! BL @READ ! AI 0,>20 ! BLWP @VSBW ! *--------------------------------------------+ LI 3,BMHD+6 ! MOV *3+,4 ! BL @READ ! LI 3,BMHD+16 ! MOVB *3,15 ! SRL 15,8 * R15 IST BITPLANES ! *--------------------------------------------+ LI 3,CAMG ! AUS HOLD UNF MODIFY, WIRD NOCAMG BL @EMPFAN ! GESKIPPED! JMP NOCAMG ! MOVB 5,*3 ! CI 5,>4300 * "C" ERKANNT ? ! JNE NOCAMG ! INC 3 ! NOCAM1 BL @EMPFAN ! JMP NOCAM1 ! CI 5,>4100 * "A" ERKANNT ? ! JEQ CAMGOK * -> CAMG ! ! LI 3,CMAP * -> IRRTUM, CMAP ! LI 4,>434D * POINTER RICHTEN ! MOV 4,*3+ * UND IN CMAP ! LI 4,>6 * WEITER. ! JMP CMAPEN ! CAMGOK MOVB 5,*3+ ! LI 4,>6 ! BL @READ ! LI 3,CAMG+6 ! MOV *3+,4 ! BL @READ * REST LESEN, IGNORE! *--------------------------------------------+ LI 3,CMAP ! NOCMAP BL @EMPFAN ! JMP NOCMAP ! MOVB 5,*3 ! CI 5,>4300 ! JNE NOCMAP * "C" ERKANNT ?! INC 3 ! LI 4,>7 ! CMAPEN BL @READ ! AI 0,>20 ! BLWP @VSBW ! *--------------------------------------------+ LI 3,CMAP+6 ! MOV *3+,4 ! BL @READ ! AI 0,>20 ! BLWP @VSBW ! *--------------------------------------------+ DIFFER BL @EMPFAN ! * ES WERDEN ALLE CHUNKS GESKIPPT, JMP DIFFER ! * DIE NICHT MIT B BEGINNEN ! CI 5,>4200 ! JNE CRGRUN ! LI 3,BODY ! JMP BODRUN ! CRGRUN LI 3,CRNG ! MOVB 5,*3+ ! LI 4,>7 ! BL @READ ! LI 3,CRNG+6 ! MOV *3+,4 ! BL @READ ! JMP DIFFER ! *---------------------------+----------------+-------------------------+ * BODY ! ! *---------------------------+ ! NOBODY BL @EMPFAN ! JMP NOBODY ! BODRUN MOVB 5,*3 ! CI 5,>4200 ! JNE NOBODY * "B" ERKANNT ? ! INC 3 ! LI 4,>7 ! BL @READ ! LI 3,BODY+6 * LOW-WORD ANZAHL ! MOV *3,4 ! DECT 3 ! MOV *3,3 * HIGH-WORD ANZAHL ! MOV 4,4 ! JEQ NOINC ! INC 3 ! NOINC AI 0,>20 ! BLWP @VSBW ! *---------------------------+ ! * READ MAX 512-KBYTE ! (MIT MAX 38400 BAUD) ! *---------------------------+ ! CLR 0 ! R0 IST ADRESSE ! CLR 1 ! R1 IST BANK ! READBL MOVB 0,@>9C22(1) ! GROMWRT-ADRESS IST OFFSET BANK 8 ! SWPB 0 ! ! MOVB 0,@>9C22(1) ! ! SWPB 0 ! ! RECEIV BL @EMPFAN ! ! JMP RECEIV ! ! MOVB 5,@>9C20(1) ! ! INC 0 ! ! JNC NOBANK ! ! AI 1,>4 ! ! NOBANK DEC 4 ! ! JNE READBL ! ANZAHL IST R3 HIGH-WORD, R4 LOW-WORD ! DEC 3 ! ! JNE READBL ! ! *---------------------------+------------------------------------------+ * DAS PAINTING KANN BEGINNEN ! (MIT 512*424 PIXELS) ! *----------------------------------------------------------------------+ PARTWO CLR 0 LI 1,TEXT7 LI 2,>300 BLWP @VMBW PARTTA BLWP @KSCAN MOVB @>837C,@>837C JEQ PARTTA MOV @DIRECT,@DIRECT JNE DONERE B @LOADIN * KEIN DATEN EMPFANGEN, -> OPTION 5 DONERE BLWP @BITMAP * DATEN WURDEN GELESEN VON RS232 ->BILD AUFBAUEN BLWP @MOUSEI BLWP @PATCLR LI 0,>1000 * LADEN ALLER 16 (FALLS 16) FARBTAFELN LI 2,>10 LI 3,CMAP+8 COLLOP BLWP @VWTR MOVB *3+,4 MOVB *3+,5 MOVB *3+,6 SRL 4,13 SRL 5,13 SRL 6,13 SLA 4,12 SLA 6,8 A 6,4 A 5,4 MOVB 4,@>8C04 SWPB 4 MOVB 4,@>8C04 INC 0 DEC 2 JNE COLLOP *---------------------------------------------------------+ * SHIFT DER DATEN UND FALLS DER FALL, DEKOMPRIMIEREN ! *---------------------------------------------------------+ LI 0,BMHD+18 * TEST AUF COMPRESSED MOVB *0,0 SRL 0,8 JEQ UNCOM LI 0,BODY+4 * SHIFT FUER COMPRESSED MOV *0+,1 * BODY-LAENGE HOLEN MOV *0,2 INC 1 LI 12,>1700 SBZ 3 CLR 3 CLR 4 CLR 5 CLR 6 CLR 8 * COUNTER-FLAG -> =0 LANGEN-BYTE COMLO MOVB 3,@>9C22(5) <>0 DATEN-BYTE SWPB 3 MOVB 3,@>9C22(5) SWPB 3 MOVB @>9820(5),10 MOV 8,8 * LANGEN-BYTE ? JNE COM0 * FALLS JA, ->CONTER (R7) SETZEN MOV 10,7 COM0 INC 3 JNC COM1 * 16-BIT COUNTER-OVERFLOW ? AI 5,>4 * -> NEUE BASISADRESSE COM1 MOV 8,8 * LAENGEN-BYTE ? JNE NOTEST * FALLS NEIN KEIN COUNTER AUFBEREI. SETO 8 * HIERNACH DANN NUR DATEN-BYTES SETO 9 * R9 IST COUNTER OB NEGTIV/POSITV SRA 7,8 * FALLS R7<0 DANN WIEDERHOLUNG VON JLT COMLOP * GLEICHEM DATEN-BYTE! CLR 9 * ->R7 >= 0, ->NAECHSTEN R7 BYTES COMLOP ABS 7 * UEBERNEHMEN INC 7 * N+1 JMP COM4 NOTEST MOVB 4,@>9C32(6) SWPB 4 MOVB 4,@>9C32(6) SWPB 4 MOVB 10,@>9C30(6) * NEUES DATA SCHREIBEN INC 4 * FALLS 16-BIT-COUNTER OVERF. JNC COM2 * BASIS-ADRESSE ERHOEHEN AI 6,>4 COM2 DEC 7 * COUNTER DEKREMENTIEREN JNE COM3 CLR 8 * LAENGEN-BYTE-FLAG LOESCHEN CLR 9 * NEGITV-BYTE LOESCHEN COM3 MOV 9,9 * ANGESCHALTET ? JNE NOTEST * FALLS JA, GLEICHES DATA SCHREIBEN COM4 DEC 2 * MAINLOOP EINS WENIGER JNE COMLO DEC 1 * ZWEITE MAINLOOP, DA COUNTER 32BIT JNE COMLO SBO 3 JMP CONTIN UNCOM LI 0,BODY+4 * UNCOMPRESSED-TEIL, SIMPLER SHIFT MOV *0+,1 * R1 IST HIGH-WORD MOV *0,2 INC 1 LI 12,>1700 SBZ 3 CLR 3 CLR 4 CLR 5 CLR 6 UNCOML MOVB 3,@>9C22(5) SWPB 3 MOVB 3,@>9C22(5) SWPB 3 MOVB @>9820(5),7 INC 3 JNC UNCO1 AI 5,>4 UNCO1 MOVB 4,@>9C32(6) SWPB 4 MOVB 4,@>9C32(6) SWPB 4 MOVB 7,@>9C30(6) INC 4 JNC UNCO2 AI 6,>4 UNCO2 DEC 2 JNE UNCOML DEC 1 JNE UNCOML SBO 3 CONTIN CLR @BYTE * HIER GEHTS WEITER IM MAIN ! LI 0,BMHD+8 * BERECHNUNG DES OFFSETS FUER MOV *0+,1 * BILDMITTE MOV *0,2 SRL 1,1 LI 3,>100 * HALBE SCREEN-BREITE S 1,3 MOV 3,@XOFSET SRL 2,1 LI 3,>D4 * HALBE SCREEN-HOEHE S 2,3 MOV 3,@YOFSET CLR @X CLR @Y CLR 14 MAINLO LI 5,MYWS+12 * MYWS+12 => R6 MOV 15,4 * R15 IST ANZ. DER BITPLANES LI 12,>1700 SBZ 3 MOV @BYTE,3 * BYTE-COUNTER MOV 14,13 * R14-BANK NACH R13, DA EVENTUELL READLN MOVB 3,@>9C32(13) * NUR DATENBITS IN GRAM OVERFLOW SWPB 3 MOVB 3,@>9C32(13) SWPB 3 MOVB @>9830(13),*5 * SCHREIBT INHALT NACH R15 INCT 5 * JETZT POINTER AUF R8 LI 0,BMHD+8 * R0 POINTER AUF HOEHE MOV *0,1 * R3 IST BREITE SRL 1,3 * GETEILT DURCH 8 A 1,3 * OVERFLOW??? JNC NOOVER * JA -> NAECHSTE BANK AI 13,>4 NOOVER DEC 4 * R4 IST BITPLANE-COUNTER JNE READLN * R6 ERSTE BYTE DATEN PLANE 1 SBO 3 * R7 ERSTE BYTE DATEN PLANE 2 LI 2,>8 * R8 ERSTE BYTE DATEN PLANE 3 BYTELO CLR 0 * R9 ERSTE BYTE DATEN PLANE 4 CLR 1 * R10 ERSTE BYTE DATEN PLANE 5 SLA 6,1 * (R11 MASKING-BIT) JNC NEXT AI 0,>1 NEXT INC 1 C 1,15 JEQ READY SLA 7,1 JNC NEXT1 AI 0,>2 NEXT1 INC 1 C 1,15 JEQ READY SLA 8,1 JNC NEXT2 AI 0,>4 NEXT2 INC 1 C 1,15 JEQ READY SLA 9,1 JNC NEXT3 AI 0,>8 NEXT3 INC 1 C 1,15 JEQ READY SLA 10,1 JNC READY AI 0,>10 READY MOV 0,@COLOR CLR @SETON MOV @X,0 MOV @Y,1 A @XOFSET,0 * TEST AUF BEREICHSUEBERSCHREITUNG JLT NOPIX A @YOFSET,1 JLT NOPIX CI 0,>1FF JGT NOPIX CI 1,>1A7 JGT NOPIX BLWP @PIXEL NOPIX INC @X DEC 2 JNE BYTELO INC @BYTE * MAIN-BYTE-COUNTER OVERFLOW? JNC NOSWIT AI 14,>4 * -> BANK ERHOEHEN NOSWIT LI 0,BMHD+8 MOV *0,1 C 1,@X * BILDBREITE ERREICHT ? JNE MAINLO SRL 1,3 * ERRECHNUG DER NEUEN BASIS-ADRESSE MPY 15,1 * MOV 2,1 * BITPLANES*(PIXELANZAHLBREITE/8) MPY @Y,1 * * AKTUELLE_ZEILENNUMMER MOV 2,@BYTE * HIGH-WORD * 4 IST BASIS-BANK MOV 1,14 SLA 14,2 CLR @X INC @Y LI 0,BMHD+10 MOV *0,1 C 1,@Y * ZEILENENDE ERREICHT ? JNE MAINLO *------------------------------------------------------------------------------* * CONVERTIEREN DER VIEDO-FORMATE * *------------------------------------------------------------------------------* CLR @>8C02 CLR @>9C3A CLR @>8C02 CLR @>9C3A CLR 0 CLR 1 SAVESX MOVB @>8800,@>9C38(1) * KOMPLETTES AUSLESEN DER SCREEN DEC 0 JNE SAVESX AI 1,>4 MOVB 0,@>9C3A(1) NOP MOVB 0,@>9C3A(1) CI 1,>8 JNE SAVESX LI 0,>0E00 BLWP @VWTR TASTE1 BLWP @MOUSE MOV @MLEFT,@MLEFT JEQ NONEW B @BEGIN NONEW MOV @MRIGHT,@MRIGHT JEQ NOQUIT BLWP @FADEOU BLWP @EA BLWP @FADEIN LI 12,>1700 SBZ 5 SBZ 3 BLWP @>0000 NOQUIT BLWP @KSCAN MOVB @>837C,@>837C JEQ TASTE1 MOVB @>8375,1 SRL 1,8 CI 1,>4C JNE NOLOAD LOADIN LI 0,DATEI BLWP @LOAD JMP TASTE1 NOLOAD CI 1,>53 JNE NOSAVE LI 0,DATEI BLWP @SAVE JMP TASTE1 NOSAVE CI 1,>44 JNE NODOWN BLWP @DOWN JMP TASTE1 NODOWN CI 1,>55 JNE NOUP BLWP @UP JMP TASTE1 NOUP CI 1,>31 JLT TASTE1 CI 1,>34 JGT TASTE1 CI 1,>31 JNE NOONE BLWP @B5H4 BLWP @MOUSEI JMP TASTE1 NOONE CI 1,>32 JNE NOTWO BLWP @B5H2 BLWP @MOUSEI JMP TASTE1 NOTWO CI 1,>33 JNE NOTHRE BLWP @B2H4 BLWP @MOUSEI JMP TASTE1 NOTHRE BLWP @B2H2 BLWP @MOUSEI JMP TASTE1 *----------------------------+-----------------------------+ * MEHRERE DATEN LESEN ! ! *----------------------------+ ! READ MOV 4,4 ! JNE READGO ! RT ! READGO MOV 11,10 ! READW BL @EMPFAN ! JMP READW * PONTER IN R3 ! MOVB 5,*3+ * ANZAHL IN R4 ! DEC 4 ! JNE READW ! B *10 ! *-------------------+---------+----------------------------+ SENDEN SBO 16 ! ! ! SEND2 TB 22 ! ! RS232/1-ROUTINEN ! JNE SEND2 ! SENDEN ! ! LDCR 1,8 ! ! ! SBZ 16 ! ! ! RT ! ! ! *-------------------+---------+ ! EMPFAN TB 21 ! ! ! JNE EMPF1 ! ! ! CLR 5 ! ! ! STCR 5,8 ! ! ! SBZ 18 ! EMPFANG ! ! TB 9 ! ! ! JEQ EMPF1 ! ! ! INCT 11 ! ! ! EMPF1 RT ! ! ! *-------------------+---------+ ! BAUD DATA >01A1 * 1200 FEHLER 0.08 % ! DATA >0034 * 9600 FEHLER 0.16 % ! DATA >001A * 19200 FEHLER 0.16 % ! DATA >000D * 38400 FEHLER 0.16 % ! RS232 LI 12,>1540 ! SBO 31 * ALLE BITS 14,13,12,11 AN! ! LI 15,>8300 * 8 DATENBITS PARRITY=NONE ! LDCR 15,8 * 1 STOPBIT //4M-BIT =0 ! SBZ 13 ! LDCR @BAUD(1),12 ! RT ! *==========================================================+ B5H4 DATA B5H4WS,B5H4PG * B5H4WS BSS >20 * B5H4DA DATA >000A,>0162,>023F,>05F7 * BILDSCHIRM AUF : DATA >061E,>0700,>0888,>098E * >000000 BIS >00D400 DATA >0B01,>0E00,>0F00,>122D * UND >010000 BIS >01D400 DATA >0000 * B5H4PG LI 1,B5H4DA * SPRITES, WENN MIT MOUSEI ZUGELASSEN : B5H4LO MOV *1+,2 * (4-CHARS-SPRITES) JEQ B5H4CO * CHARS : >00F000 BIS >00F800 ORI 2,>8000 * COLORS : >00F800 BIS >00FA00 SWPB 2 * ATTRIBUTES : >00FA00 BIS >00FA80 MOVB 2,@>8C02 * SWPB 2 MOVB 2,@>8C02 JMP B5H4LO B5H4CO LI 12,>1700 SBZ 3 CLR @>8C02 CLR @>9C3A LI 0,>4000 MOVB 0,@>8C02 CLR @>9C3A LI 0,>1000 LI 1,>9838 LI 2,>8C00 LI 3,>9C3A B5H4TR MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 MOVB *1,*2 DEC 0 JNE B5H4TR LI 0,>1000 AI 1,>4 AI 3,>4 CLR *3 CLR *3 CI 1,>9840 JNE B5H4TR SBO 3 LI 0,>0E00 BLWP @VWTR RTWP *==============================================================================* B5H2 DATA B5H2WS,B5H2PG * B5H2WS BSS >20 * B5H2DA DATA >000A,>0162,>021F,>05F7 * BILDSCHIRM AUF : DATA >061E,>0700,>0888,>0982 * >000000 BIS >00D400 DATA >0B01,>0E00,>0F00,>122D * DATA >0000 * B5H2PG LI 1,B5H2DA * SPRITES, WENN MIT MOUSEI ZUGELASSEN : B5H2LO MOV *1+,2 * (4-CHARS-SPRITES) JEQ B5H2CO * CHARS : >00F000 BIS >00F800 ORI 2,>8000 * COLORS : >00F800 BIS >00FA00 SWPB 2 * ATTRIBUTES : >00FA00 BIS >00FA80 MOVB 2,@>8C02 * SWPB 2 MOVB 2,@>8C02 JMP B5H2LO B5H2CO LI 12,>1700 SBZ 3 CLR @>8C02 LI 0,>4000 MOVB 0,@>8C02 LI 0,>10 LI 1,>9C3A LI 4,>9838 LI 5,>8C00 LI 3,>3500 B5H2TR MOVB 3,*1 SWPB 3 MOVB 3,*1 SWPB 3 B5H2T1 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 DEC 0 JNE B5H2T1 LI 0,>10 AI 1,>4 AI 4,>4 CI 1,>9C42 JNE B5H2TR AI 3,>100 LI 1,>9C3A LI 4,>9838 CI 3,>9F00 JNE B5H2TR SBO 3 LI 0,>0E00 BLWP @VWTR RTWP *==============================================================================* B2H4 DATA B2H4WS,B2H4PG * B2H4WS BSS >20 * B2H4DA DATA >0006,>0162,>023F,>05F7 * BILDSCHIRM AUF : DATA >061E,>0700,>0888,>098E * >000000 BIS >006A00 DATA >0B01,>0E00,>0F00,>122D * UND >008000 BIS >00EA00 DATA >0000 * B2H4PG LI 1,B2H4DA * SPRITES, WENN MIT MOUSEI ZUGELASSEN : B2H4LO MOV *1+,2 * (4-CHARS-SPRITES) JEQ B2H4CO * CHARS : >00F000 BIS >00F800 ORI 2,>8000 * COLORS : >00F800 BIS >00FA00 SWPB 2 * ATTRIBUTES : >00FA00 BIS >00FA80 MOVB 2,@>8C02 * SWPB 2 MOVB 2,@>8C02 JMP B2H4LO B2H4CO LI 12,>1700 SBZ 3 CLR @>8C02 LI 0,>4000 MOVB 0,@>8C02 LI 0,>8 LI 1,>9C3A LI 4,>9838 LI 5,>8C00 LI 3,>0040 B2H4TR MOVB 3,*1 SWPB 3 MOVB 3,*1 SWPB 3 B2H4T1 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 DEC 0 JNE B2H4T1 AI 3,>100 LI 0,>8 CI 3,>D440 JNE B2H4TR LI 0,>0E02 BLWP @VWTR LI 3,>40 MOVB 3,@>8C02 SWPB 3 MOVB 3,@>8C02 SWPB 3 LI 0,>8 AI 1,>4 AI 4,>4 CI 1,>9C42 JNE B2H4TR SBO 3 LI 0,>0E00 BLWP @VWTR RTWP *==============================================================================* B2H2 DATA B2H2WS,B2H2PG * B2H2WS BSS >20 * B2H2DA DATA >0006,>0162,>021F,>05F7 * BILDSCHIRM AUF : DATA >061E,>0700,>0888,>0982 * >000000 BIS >006A00 DATA >0B01,>0E00,>0F00,>122D * DATA >0000 * B2H2PG LI 1,B2H2DA * SPRITES, WENN MIT MOUSEI ZUGELASSEN : B2H2LO MOV *1+,2 * (4-CHARS-SPRITES) JEQ B2H2CO * CHARS : >00F000 BIS >00F800 ORI 2,>8000 * COLORS : >00F800 BIS >00FA00 SWPB 2 * ATTRIBUTES : >00FA00 BIS >00FA80 MOVB 2,@>8C02 * SWPB 2 MOVB 2,@>8C02 JMP B2H2LO B2H2CO LI 12,>1700 SBZ 3 CLR @>8C02 LI 0,>4000 MOVB 0,@>8C02 LI 0,>8 LI 1,>9C3A LI 4,>9838 LI 5,>8C00 LI 3,>3540 B2H2TR MOVB 3,*1 SWPB 3 MOVB 3,*1 SWPB 3 B2H2T1 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 MOVB *4,*5 DEC 0 JNE B2H2T1 LI 0,>8 AI 1,>4 AI 4,>4 CI 1,>9C42 JNE B2H2TR AI 3,>100 LI 1,>9C3A LI 4,>9838 CI 3,>9F40 JNE B2H2TR SBO 3 LI 0,>0E00 BLWP @VWTR RTWP *==============================================================================+ COPY "WDS1.IFF.BS/S" END START
© Dr. Henry Koplien