kolibrios-fun/programs/emulator/PrMK/trunk/macroPRMK.inc

48 lines
811 B
PHP
Raw Normal View History

macro buttabnum a0,a1,a2,a3,a4
{
test [flags],(1 shl 5)
jnz .prg
test [flags],(1 shl 3)
jnz .a1
if a4
test [flags],(1 shl 4)
jnz .a4
endf
test [flags],(1 shl 11)
jnz .a2
test [flags],(1 shl 12)
jnz .a3
test [flags],(1 shl 9)
jnz .prg
mov eax,a0
jmp but_table.to_opcode
.a1: mov eax,a1
jmp but_table.to_opcode
.a2: mov eax,a2
jmp but_table.to_opcode
.a3: mov eax,a3
jmp but_table.to_opcode
.prg:
test [flags],(1 shl 8)
jz @f
add [dop8],a0
jmp but_table.dop8
@@: test [flags],(1 shl 9)
jz @f
mov al,a0
jmp but_table.dop9
@@: movzx eax,[schk]
add eax,PMEM
inc [schk]
test [flags],(1 shl 3)
jnz @f
mov byte [eax],a0
ret
@@: mov byte [eax],a1
btr [flags],3
ret
if a4
.a4: mov eax,a4
jmp but_table.to_opcode
endf
}