Rev 1917 | Details | Compare with Previous | Last modification | View Log
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 213 | alone | 1 | align 256 |
| 2 | distbuf;=#BA00 ;#300 ;ID,texx,dist |
||
| 3 | ds 0x300 |
||
| 4 | |||
| 5 | IF atm |
||
| 6 | MACRO setpgfast pg |
||
| 7 | LD A,pg |
||
| 8 | setpgafast |
||
| 9 | ENDM |
||
| 10 | MACRO setpgafast |
||
| 435 | alone | 11 | ;LD (curpg),A |
| 213 | alone | 12 | ;LD BC,#FFF7 |
| 13 | ;OUT (C),A |
||
| 1620 | alone | 14 | SETPGC000 |
| 213 | alone | 15 | ENDM |
| 16 | ELSE ;~atm |
||
| 17 | MACRO setpg pg |
||
| 18 | LD A,pg |
||
| 19 | setpgA |
||
| 20 | ENDM |
||
| 21 | MACRO setpgA |
||
| 22 | CALL SETPGA |
||
| 23 | ENDM |
||
| 24 | MACRO setpgfast pg |
||
| 25 | LD A,pg |
||
| 26 | setpgafast |
||
| 27 | ENDM |
||
| 28 | MACRO setpgafast |
||
| 29 | LD (curpg),A |
||
| 30 | LD BC,#7FFD |
||
| 31 | OUT (C),A |
||
| 32 | ENDM |
||
| 33 | ENDIF ;~atm |
||
| 34 | |||
| 35 | |||
| 36 | |||
| 37 | wascorrlogd |
||
| 38 | INCBIN "corlogd_" |
||
| 39 | ORG $-256 |
||
| 40 | DUP 256 |
||
| 41 | DB {$+(scrtopx*8)}&0xff |
||
| 42 | EDUP |
||
| 43 | IF lores |
||
| 44 | ORG $-256 |
||
| 45 | _=$ |
||
| 46 | DUP 128 |
||
| 47 | DB {_}&0xff |
||
| 48 | _=_+2 |
||
| 49 | EDUP |
||
| 50 | DS 128 |
||
| 51 | ENDIF |
||
| 52 | wasda |
||
| 53 | INCBIN "da" |
||
| 54 | ORG $-256 |
||
| 55 | DUP 256 |
||
| 56 | DB 0xff&({$}+128) |
||
| 57 | EDUP |
||
| 58 | ORG $-256 |
||
| 59 | DUP 256 |
||
| 60 | DB 0xff&({$+(scrtopx*8)}) |
||
| 61 | EDUP |
||
| 62 | IF lores |
||
| 63 | ORG $-256 |
||
| 64 | _=$ |
||
| 65 | DUP 128 |
||
| 66 | DB {_}&0xff |
||
| 67 | _=_+2 |
||
| 68 | EDUP |
||
| 69 | DS 128 |
||
| 70 | ENDIF |
||
| 71 | |||
| 72 | TEXCODEGO |
||
| 435 | alone | 73 | IF atm == 0 |
| 213 | alone | 74 | LD HL,0;-2 |
| 75 | ADD HL,SP |
||
| 76 | LD (clscrbufsp),HL |
||
| 77 | LD (eorfillsp),HL |
||
| 78 | endif |
||
| 79 | |||
| 80 | IF atm |
||
| 81 | call setpgmap4000 |
||
| 82 | ENDIF |
||
| 1916 | alone | 83 | LD BC,#FBDF |
| 84 | IN A,(C) |
||
| 85 | LD (mouseoldx),A |
||
| 213 | alone | 86 | CALL RECMAP |
| 2222 | alone | 87 | if 0 |
| 213 | alone | 88 | LD HL,tcos |
| 89 | REtcos0 |
||
| 90 | DUP 2;4 |
||
| 91 | SRA (HL) |
||
| 92 | EDUP |
||
| 93 | INC L |
||
| 94 | jr NZ,REtcos0 |
||
| 2222 | alone | 95 | endif |
| 1916 | alone | 96 | INCLUDE "zxloop.asm" |
| 213 | alone | 97 | INCLUDE "WSCAN10.asm" |
| 98 | INCLUDE "WREND.asm" |
||
| 99 | INCLUDE "WCTRL.asm" |
||
| 100 | |||
| 101 | ;६ ७ ( 砫 ७) |
||
| 102 | curXx |
||
| 103 | curx DB #80 |
||
| 104 | curX DB #0 |
||
| 105 | curYy |
||
| 106 | cury DB #80 |
||
| 107 | curY DB #0 |
||
| 108 | curxy DW 0 |
||
| 109 | curyx DW 0 |
||
| 110 | curYX DW 0 |
||
| 111 | curangle |
||
| 112 | DW tsin |
||
| 113 | demobegin |
||
| 114 | IF demoplay |
||
| 115 | INCBIN "demorec9" |
||
| 116 | ELSE |
||
| 117 | DB %00111111 ;all keys released |
||
| 118 | ENDIF |
||
| 119 | |||
| 289 | dimkam | 120 | ;DISPLAY "PROG END=",$ |
| 213 | alone | 121 | |
| 122 | align 256 ;DS .(-$) |
||
| 123 | tables |
||
| 124 | wastables |
||
| 125 | shift=tables-$ |
||
| 126 | tlogd2sca=$+shift |
||
| 127 | IF scale64 |
||
| 128 | IF scale64 == 3 |
||
| 129 | INCBIN "logd2sc3" |
||
| 130 | ELSE |
||
| 131 | INCBIN "logd2sc2" |
||
| 132 | ENDIF |
||
| 133 | ELSE |
||
| 134 | INCBIN "logd2sc_" |
||
| 135 | ENDIF |
||
| 136 | tsqr2=$+shift |
||
| 137 | INCBIN "sqr2int" |
||
| 138 | tlogd=$+shift |
||
| 139 | INCBIN "logd" |
||
| 140 | tcorrlogd=$+shift |
||
| 141 | DUP 256 |
||
| 142 | DB {wascorrlogd+$-tcorrlogd}&0xff |
||
| 143 | EDUP |
||
| 144 | tcos=$+shift |
||
| 145 | INCBIN "cos" |
||
| 146 | tlogcos=$+shift |
||
| 147 | INCBIN "pluslcos" |
||
| 148 | tda=$+shift |
||
| 149 | DUP 256 |
||
| 150 | DB {wasda+$-tda}&0xff |
||
| 151 | EDUP |
||
| 152 | tctg=$+shift |
||
| 153 | INCBIN "plusctg" |
||
| 154 | tsin=$+shift |
||
| 155 | INCBIN "sin" |
||
| 2222 | alone | 156 | if 1 |
| 157 | ; z=0:255; sprintf('%d,',fix(atan(2.^(z/32))*128/pi)) |
||
| 158 | |||
| 159 | ;;;;;;;; atan(2^(x/32))*128/pi ;;;;;;;; |
||
| 160 | atan_tab=$+shift |
||
| 161 | db 020h,020h,020h,021h,021h,022h,022h,023h,023h,023h,024h,024h,025h,025h,026h,026h |
||
| 162 | db 026h,027h,027h,028h,028h,028h,029h,029h,02Ah,02Ah,02Ah,02Bh,02Bh,02Ch,02Ch,02Ch |
||
| 163 | db 02Dh,02Dh,02Dh,02Eh,02Eh,02Eh,02Fh,02Fh,02Fh,030h,030h,030h,031h,031h,031h,031h |
||
| 164 | db 032h,032h,032h,032h,033h,033h,033h,033h,034h,034h,034h,034h,035h,035h,035h,035h |
||
| 165 | db 036h,036h,036h,036h,036h,037h,037h,037h,037h,037h,037h,038h,038h,038h,038h,038h |
||
| 166 | db 038h,039h,039h,039h,039h,039h,039h,039h,039h,03Ah,03Ah,03Ah,03Ah,03Ah,03Ah,03Ah |
||
| 167 | db 03Ah,03Bh,03Bh,03Bh,03Bh,03Bh,03Bh,03Bh,03Bh,03Bh,03Bh,03Bh,03Ch,03Ch,03Ch,03Ch |
||
| 168 | db 03Ch,03Ch,03Ch,03Ch,03Ch,03Ch,03Ch,03Ch,03Ch,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh |
||
| 169 | db 03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Dh,03Eh,03Eh,03Eh,03Eh |
||
| 170 | db 03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh |
||
| 171 | db 03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Eh,03Fh,03Fh,03Fh,03Fh |
||
| 172 | db 03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh |
||
| 173 | db 03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh |
||
| 174 | db 03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh |
||
| 175 | db 03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh |
||
| 176 | db 03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh,03Fh |
||
| 177 | |||
| 178 | ; x=0:255;x(1)=1; sprintf('%d,',fix(32*log2(x))) |
||
| 179 | |||
| 180 | ;;;;;;;; log2(x)*32 ;;;;;;;; |
||
| 181 | log2_tab=$+shift |
||
| 182 | db 000h,000h,020h,032h,040h,04Ah,052h,059h,060h,065h,06Ah,06Eh,072h,076h,079h,07Dh |
||
| 183 | db 080h,082h,085h,087h,08Ah,08Ch,08Eh,090h,092h,094h,096h,098h,099h,09Bh,09Dh,09Eh |
||
| 184 | db 0A0h,0A1h,0A2h,0A4h,0A5h,0A6h,0A7h,0A9h,0AAh,0ABh,0ACh,0ADh,0AEh,0AFh,0B0h,0B1h |
||
| 185 | db 0B2h,0B3h,0B4h,0B5h,0B6h,0B7h,0B8h,0B9h,0B9h,0BAh,0BBh,0BCh,0BDh,0BDh,0BEh,0BFh |
||
| 186 | db 0C0h,0C0h,0C1h,0C2h,0C2h,0C3h,0C4h,0C4h,0C5h,0C6h,0C6h,0C7h,0C7h,0C8h,0C9h,0C9h |
||
| 187 | db 0CAh,0CAh,0CBh,0CCh,0CCh,0CDh,0CDh,0CEh,0CEh,0CFh,0CFh,0D0h,0D0h,0D1h,0D1h,0D2h |
||
| 188 | db 0D2h,0D3h,0D3h,0D4h,0D4h,0D5h,0D5h,0D5h,0D6h,0D6h,0D7h,0D7h,0D8h,0D8h,0D9h,0D9h |
||
| 189 | db 0D9h,0DAh,0DAh,0DBh,0DBh,0DBh,0DCh,0DCh,0DDh,0DDh,0DDh,0DEh,0DEh,0DEh,0DFh,0DFh |
||
| 190 | db 0DFh,0E0h,0E0h,0E1h,0E1h,0E1h,0E2h,0E2h,0E2h,0E3h,0E3h,0E3h,0E4h,0E4h,0E4h,0E5h |
||
| 191 | db 0E5h,0E5h,0E6h,0E6h,0E6h,0E7h,0E7h,0E7h,0E7h,0E8h,0E8h,0E8h,0E9h,0E9h,0E9h,0EAh |
||
| 192 | db 0EAh,0EAh,0EAh,0EBh,0EBh,0EBh,0ECh,0ECh,0ECh,0ECh,0EDh,0EDh,0EDh,0EDh,0EEh,0EEh |
||
| 193 | db 0EEh,0EEh,0EFh,0EFh,0EFh,0EFh,0F0h,0F0h,0F0h,0F1h,0F1h,0F1h,0F1h,0F1h,0F2h,0F2h |
||
| 194 | db 0F2h,0F2h,0F3h,0F3h,0F3h,0F3h,0F4h,0F4h,0F4h,0F4h,0F5h,0F5h,0F5h,0F5h,0F5h,0F6h |
||
| 195 | db 0F6h,0F6h,0F6h,0F7h,0F7h,0F7h,0F7h,0F7h,0F8h,0F8h,0F8h,0F8h,0F9h,0F9h,0F9h,0F9h |
||
| 196 | db 0F9h,0FAh,0FAh,0FAh,0FAh,0FAh,0FBh,0FBh,0FBh,0FBh,0FBh,0FCh,0FCh,0FCh,0FCh,0FCh |
||
| 197 | db 0FDh,0FDh,0FDh,0FDh,0FDh,0FDh,0FEh,0FEh,0FEh,0FEh,0FEh,0FFh,0FFh,0FFh,0FFh,0FFh |
||
| 198 | endif |
||
| 213 | alone | 199 | tscaljps=$+shift |
| 200 | ds 256;INCBIN "scaljps" |
||
| 201 | tID=$+shift |
||
| 202 | MACRO WALL pgnum,num2 |
||
| 203 | DB pgnum,num2;-pgnum,num2 |
||
| 204 | ENDM |
||
| 1917 | alone | 205 | DUP 64+16 ;skip and 0..15 ; ਬ ᯮ ⥭ 16..35 |
| 213 | alone | 206 | WALL 0,#02 |
| 207 | EDUP |
||
| 208 | MACRO PGWALL pgnum |
||
| 209 | WALL pgnum,#02 |
||
| 210 | WALL pgnum,#42 |
||
| 211 | WALL pgnum,#82 |
||
| 212 | WALL pgnum,#C2 |
||
| 213 | ENDM |
||
| 214 | PGWALL 0 |
||
| 215 | PGWALL 1 |
||
| 216 | PGWALL 2 |
||
| 217 | PGWALL 3 |
||
| 218 | PGWALL 4 |
||
| 1917 | alone | 219 | DUP 64-20-16 ;?..63 |
| 213 | alone | 220 | WALL 0,#02 |
| 221 | EDUP |
||
| 222 | cursprites=$+shift |
||
| 223 | DS 256 |
||
| 224 | ltables=$-wastables |
||
| 225 | |||
| 1916 | alone | 226 | include "recmap.asm" |