Sound_Byte ($F256)

Sound_Byte_x ($F259)

Sound_Byte_raw ($F25B)

All of these routines cause a byte of music data to be written to the music chip. Sound_Byte stores a shadow copy of the data into $C800-$C80E, and Sound_Byte_x stores a shadow copy into a 15 byte area pointed to by the X register. Sound_Byte_raw does not store a shadow copy of the data at all.

 

ENTRY:

DP = $D0

A-reg = which of the 15 sound chip registers to modify

B-reg = the byte of sound data

X-reg = 15 byte shadow area (Sound_Byte_x only)

 

EXIT:

X-reg = $C800 (Sound_Byte only)

D-reg trashed

 

Source