Code:
DEVICE P8X32A, XTAL1, PLL16X
FREQ 80_000_000
tonegenStart CON 1
psmStart CON 2
psmDeviceinfo CON 3
spinCmd HUB BYTE = 0
hub_long1 HUB LONG
hub_long2 HUB LONG
hub_long3 HUB LONG
temp VAR LONG
ASM
OBJ
soundmachine: "psm_tonegenerator"
psmmachine: "psm_serialcontrol_a"
PUB SpinStart
CogInit(1, @__Init, @__DATASTART)
Repeat
case spinCmd
tonegenStart:
soundmachine.tonegen(hub_long1,hub_long2,hub_long3)
spinCmd := 0
psmStart:
psmmachine.main
spinCmd := 0
psmDeviceinfo:
psmmachine.showdeviceinfo
spinCmd := 0
ENDASM
PROGRAM Start
Start:
'start tonegen driver
WRLONG hub_long1, 400
WRLONG hub_long2, 500
WRLONG hub_long3, 3
WRBYTE spinCmd, tonegenStart
'wait for driver to process
DO
RDBYTE spinCmd, temp
LOOP UNTIL temp = 0
'start psm driver
WRBYTE spinCmd, psmStart
'wait for driver to process
DO
RDBYTE spinCmd, temp
LOOP UNTIL temp = 0
'start deviceinfo driver
WRBYTE spinCmd, psmDeviceinfo
'wait for driver to process
DO
RDBYTE spinCmd, temp
LOOP UNTIL temp = 0
END
Bookmarks