📄 fxtable.asm
字号:
test bl,20h jnz .lowercheckz2 mov ebx,FxOpd4C1288bz jmp .end2.lowercheckz2 mov ebx,FxOpd4C1288bzl jmp .end2.ditherz2 cmp dl,0 je .colors4dz2 cmp dl,3 je .colors256dz2 mov ebx,FxOpd4C1284bzd jmp .end2.colors4dz2 mov ebx,FxOpd4C1282bzd jmp .end2.colors256dz2 test bl,20h jnz .lowercheckdz2 mov ebx,FxOpd4C1288bzd jmp .end2.lowercheckdz2 mov ebx,FxOpd4C1288bzdl.end2 mov [eax],ebx pop ebx inc ebx add eax,4 dec ecx jnz near .ploop2 ; Initiate AND and bit tables mov eax,fxxand mov ecx,256 xor ebx,ebx.loopat push ecx mov ecx,ebx and ecx,07h xor ecx,07h mov edx,0101h shl edx,cl xor edx,0FFFFFFFFh pop ecx mov [eax],edx inc ebx add eax,4 dec ecx jnz .loopat ; bit tables mov eax,fxbit01 mov ecx,256 xor ebx,ebx.loopb01 xor edx,edx test ebx,01h jz .nob0 or edx,0FFh.nob0 test ebx,02h jz .nob1 or edx,0FF00h.nob1 mov [eax],edx xor edx,edx test ebx,04h jz .nob2 or edx,0FFh.nob2 test ebx,08h jz .nob3 or edx,0FF00h.nob3 mov [eax+256*4],edx xor edx,edx test ebx,10h jz .nob4 or edx,0FFh.nob4 test ebx,20h jz .nob5 or edx,0FF00h.nob5 mov [eax+256*8],edx xor edx,edx test ebx,40h jz .nob6 or edx,0FFh.nob6 test ebx,80h jz .nob7 or edx,0FF00h.nob7 mov [eax+256*12],edx add eax,4 inc ebx dec ecx jnz near .loopb01 ; Initialize PLOT tables; mov esi,[sfxramdata] mov esi,[sfxplottable]; add esi,1024*1024 ; Create 4 * 256k plot tables ; 128 line mode mov [sfx128lineloc],esi xor eax,eax xor ebx,ebx.nexty.nextx cmp eax,128 jae .over push eax push ebx shr eax,3 shr ebx,3 shl ebx,4 add ebx,eax mov [esi],ebx add esi,4 pop ebx pop eax jmp .notover.over mov dword[esi],0FFFFFFFFh add esi,4.notover inc al jnz .nextx inc bl jnz .nexty ; 160 line mode mov [sfx160lineloc],esi.nexty2.nextx2 cmp eax,160 jae .over2 push eax push ebx shr eax,3 shr ebx,3 mov edx,ebx shl ebx,4 shl edx,2 add ebx,eax add ebx,edx mov [esi],ebx add esi,4 pop ebx pop eax jmp .notover2.over2 mov dword[esi],0FFFFFFFFh add esi,4.notover2 inc al jnz .nextx2 inc bl jnz .nexty2 ; 192 line mode mov [sfx192lineloc],esi.nexty3.nextx3 cmp eax,192 jae .over3 push eax push ebx shr eax,3 shr ebx,3 mov edx,ebx shl ebx,4 shl edx,3 add ebx,eax add ebx,edx mov [esi],ebx add esi,4 pop ebx pop eax jmp .notover3.over3 mov dword[esi],0FFFFFFFFh add esi,4.notover3 inc al jnz .nextx3 inc bl jnz .nexty3 ; obj mode mov [sfxobjlineloc],esi.nexty4.nextx4 push eax push ebx and ebx,80h and eax,80h shl ebx,1 shl eax,2 add ebx,eax mov edx,ebx pop ebx pop eax push eax push ebx and ebx,78h and eax,78h shr ebx,3 shl eax,1 add ebx,eax add edx,ebx pop ebx pop eax mov [esi],edx add esi,4 inc al jnz .nextx4 inc bl jnz .nexty4 mov eax,[romdata] xor ebx,ebx mov ecx,256.loopc mov [SfxMemTable+ebx*4],eax inc ebx dec ecx jnz .loopc mov eax,[romdata] add eax,200000h xor ebx,ebx mov ecx,64.loop mov [SfxMemTable+ebx*4],eax add eax,65536 inc ebx dec ecx jnz .loop mov eax,[romdata] mov ecx,64.loop2 mov [SfxMemTable+ebx*4],eax add eax,65536 inc ebx dec ecx jnz .loop2 mov eax,[sfxramdata] mov [SfxMemTable+70h*4],eax add eax,65536 mov [SfxMemTable+71h*4],eax add eax,65536 mov [SfxMemTable+72h*4],eax add eax,65536 mov [SfxMemTable+73h*4],eax mov eax,[romdata] add eax,200000h xor ebx,ebx mov ebx,80h mov ecx,64.loops mov [SfxMemTable+ebx*4],eax add eax,65536 inc ebx dec ecx jnz .loops mov eax,[romdata] mov ecx,64.loop2s mov [SfxMemTable+ebx*4],eax add eax,65536 inc ebx dec ecx jnz .loop2s mov eax,[sfxramdata] mov [SfxMemTable+0F0h*4],eax add eax,65536 mov [SfxMemTable+0F1h*4],eax add eax,65536 mov [SfxMemTable+0F2h*4],eax add eax,65536 mov [SfxMemTable+0F3h*4],eax mov dword [FxTable+00h*4],FxOp00 mov dword [FxTable+01h*4],FxOp01 mov dword [FxTable+02h*4],FxOp02 mov dword [FxTable+03h*4],FxOp03 mov dword [FxTable+04h*4],FxOp04 mov dword [FxTable+05h*4],FxOp05 mov dword [FxTable+06h*4],FxOp06 mov dword [FxTable+07h*4],FxOp07 mov dword [FxTable+08h*4],FxOp08 mov dword [FxTable+09h*4],FxOp09 mov dword [FxTable+0Ah*4],FxOp0A mov dword [FxTable+0Bh*4],FxOp0B mov dword [FxTable+0Ch*4],FxOp0C mov dword [FxTable+0Dh*4],FxOp0D mov dword [FxTable+0Eh*4],FxOp0E mov dword [FxTable+0Fh*4],FxOp0F mov dword [FxTable+10h*4],FxOp10 mov dword [FxTable+11h*4],FxOp11 mov dword [FxTable+12h*4],FxOp12 mov dword [FxTable+13h*4],FxOp13 mov dword [FxTable+14h*4],FxOp14 mov dword [FxTable+15h*4],FxOp15 mov dword [FxTable+16h*4],FxOp16 mov dword [FxTable+17h*4],FxOp17 mov dword [FxTable+18h*4],FxOp18 mov dword [FxTable+19h*4],FxOp19 mov dword [FxTable+1Ah*4],FxOp1A mov dword [FxTable+1Bh*4],FxOp1B mov dword [FxTable+1Ch*4],FxOp1C mov dword [FxTable+1Dh*4],FxOp1D mov dword [FxTable+1Eh*4],FxOp1E mov dword [FxTable+1Fh*4],FxOp1F mov dword [FxTable+20h*4],FxOp20 mov dword [FxTable+21h*4],FxOp21 mov dword [FxTable+22h*4],FxOp22 mov dword [FxTable+23h*4],FxOp23 mov dword [FxTable+24h*4],FxOp24 mov dword [FxTable+25h*4],FxOp25 mov dword [FxTable+26h*4],FxOp26 mov dword [FxTable+27h*4],FxOp27 mov dword [FxTable+28h*4],FxOp28 mov dword [FxTable+29h*4],FxOp29 mov dword [FxTable+2Ah*4],FxOp2A mov dword [FxTable+2Bh*4],FxOp2B mov dword [FxTable+2Ch*4],FxOp2C mov dword [FxTable+2Dh*4],FxOp2D mov dword [FxTable+2Eh*4],FxOp2E mov dword [FxTable+2Fh*4],FxOp2F mov dword [FxTable+30h*4],FxOp30 mov dword [FxTable+31h*4],FxOp31 mov dword [FxTable+32h*4],FxOp32 mov dword [FxTable+33h*4],FxOp33 mov dword [FxTable+34h*4],FxOp34 mov dword [FxTable+35h*4],FxOp35 mov dword [FxTable+36h*4],FxOp36 mov dword [FxTable+37h*4],FxOp37 mov dword [FxTable+38h*4],FxOp38 mov dword [FxTable+39h*4],FxOp39 mov dword [FxTable+3Ah*4],FxOp3A mov dword [FxTable+3Bh*4],FxOp3B mov dword [FxTable+3Ch*4],FxOp3C mov dword [FxTable+3Dh*4],FxOp3D mov dword [FxTable+3Eh*4],FxOp3E mov dword [FxTable+3Fh*4],FxOp3F mov dword [FxTable+40h*4],FxOp40 mov dword [FxTable+41h*4],FxOp41 mov dword [FxTable+42h*4],FxOp42 mov dword [FxTable+43h*4],FxOp43 mov dword [FxTable+44h*4],FxOp44 mov dword [FxTable+45h*4],FxOp45 mov dword [FxTable+46h*4],FxOp46 mov dword [FxTable+47h*4],FxOp47 mov dword [FxTable+48h*4],FxOp48 mov dword [FxTable+49h*4],FxOp49 mov dword [FxTable+4Ah*4],FxOp4A mov dword [FxTable+4Bh*4],FxOp4B mov dword [FxTable+4Ch*4],FxOp4C mov dword [FxTable+4Dh*4],FxOp4D mov dword [FxTable+4Eh*4],FxOp4E mov dword [FxTable+4Fh*4],FxOp4F mov dword [FxTable+50h*4],FxOp50 mov dword [FxTable+51h*4],FxOp51 mov dword [FxTable+52h*4],FxOp52 mov dword [FxTable+53h*4],FxOp53 mov dword [FxTable+54h*4],FxOp54
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -