1 ; void __fastcall__ psg_outb( unsigned char b );
2 ; void __fastcall__ psg_delayms( unsigned char c);
3 ; void __fastcall__ bios_playsound( void *b, unsigned char c);
4 ; void psg_silence( void );
6 .export _psg_outb, _psg_silence, _psg_delay
7 .export _bios_playsound
9 .include "creativision.inc"
13 ;* Let BIOS output the value
41 ;* Creativision Sound Player
43 ;* Based on BIOS sound player.
44 ;* Pass a pointer to a set of note triples, terminated with a tempo byte
45 ;* and the len (max 255)
49 pha ; Save Length Byte
53 lda #$D5 ; BIOS volume table low
55 lda #$FC ; BIOS volume table high
58 jsr popa ; Get Sound table pointer low
60 jsr popa ; Get Sound table pointer high
67 jmp $fbed ; Let BIOS do it's thing