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
38 ;* Creativision Sound Player
40 ;* Based on BIOS sound player.
41 ;* Pass a pointer to a set of note triples, terminated with a tempo byte
42 ;* and the len (max 255)
46 pha ; Save Length Byte
49 lda #$D5 ; BIOS volume table low
51 lda #$FC ; BIOS volume table high
54 jsr popa ; Get Sound table pointer low
56 jsr popa ; Get Sound table pointer high
63 jmp $FBED ; Let BIOS do it's thing