mirror of
https://github.com/nmlgc/ReC98.git
synced 2025-02-24 09:33:07 +00:00

Wow, this is the first time we're about to call any of these from C land in ≥TH03? Found no built-in way to just uppercase an identifier in TASM, so apparently we have to spell out the names in both lower- and uppercase. So, let's go back to regular, non-macro PUBLIC / PROC / ENDP code wherever we can – for all functions introduced in ≥TH03, and for everything that takes no parameters. It's simply not worth the trouble. Part of P0114, funded by Lmocinemod.
25 lines
461 B
NASM
25 lines
461 B
NASM
public _snd_pmd_resident
|
|
_snd_pmd_resident proc
|
|
mov _snd_interrupt_if_midi, 60h
|
|
mov _snd_midi_active, 0
|
|
mov _snd_fm_possible, 0
|
|
mov _snd_midi_possible, 0
|
|
xor ax, ax
|
|
mov es, ax
|
|
assume es:nothing
|
|
les bx, dword ptr es:[60h * 4]
|
|
cmp byte ptr es:[bx+2], 'P'
|
|
jnz short @@nope
|
|
cmp byte ptr es:[bx+3], 'M'
|
|
jnz short @@nope
|
|
cmp byte ptr es:[bx+4], 'D'
|
|
jnz short @@nope
|
|
mov ax, 1
|
|
ret
|
|
|
|
@@nope:
|
|
xor ax, ax
|
|
ret
|
|
_snd_pmd_resident endp
|
|
nop ; word alignment
|