Compucolor.org – Virtual Media

Listing of file='GAMSND.MAC;09' on disk='vmedia/laser_gun_joystick-sector.ccvf'

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
;	ROUTINES TO MAKE GAME SOUNDS
;
	TITLE	GAMSND

;	VALUES ON ENTRY:
;	   IRRELEVANT
;
;	RETURNS:
;	   NOTHING
;
;	DESTROYS:
;	   ALL REGISTERS
;
;
;	EXTERNALS - REQUIRED SUBROUTINES
;
	EXTRN	GENSND,PITCH,DURN,INTV,NSTEPS,STEP1,STEP2
			;USES "OVERLAPPED" SOUNDWARE ROUTINE

SNDADR	EQU	30H
SNDDAT	EQU	31H

;..............................................................
;
;	MAKE "EXPLOSION" SOUND
;
	ENTRY	BOOM

BOOM:	DI
	MVI	A,6
	OUT	SNDADR
	XRA	A
	OUT	SNDDAT
	MVI	A,7
	OUT	SNDADR
	IN	SNDADR
	ANI	0CFH
	OUT	SNDDAT
	MVI	A,9
	OUT	SNDADR
	MVI	A,16
	MOV	B,A
	OUT	SNDDAT
	MVI	A,10
	OUT	SNDADR
	MVI	A,B
	OUT	SNDDAT
	MVI	A,12
	OUT	SNDADR
	MVI	A,35
	OUT	SNDDAT
	MVI	A,13
	OUT	SNDADR
	XRA	A
	OUT	SNDDAT
	EI
	RET

;
;	MAKE LASER SOUND
;
	ENTRY	LASER

LASER:	LXI	H,50
	SHLD	PITCH
	MVI	A,1
	STA	INTV
	MVI	A,2
	STA	DURN
	MVI	A,60
	STA	NSTEPS
	MVI	A,1
	STA	STEP1
	XRA	A
	STA	STEP2
	CALL	GENSND
	RET

	END