Code:
DEFINE OSC 10
SO VAR PORTC.6
SI VAR PORTC.7
Bank0A CON 0 ; No idea
RTCHr VAR BYTE : RTCHr = $17
RTCMin VAR BYTE : RTCMin = $44
RTCSec VAR BYTE : RTCSec = $28
RTCMonth VAR BYTE : RTCMonth = 1
RTCDate VAR BYTE : RTCDate = 3
RTCYear VAR BYTE : RTCYear = 9
SamTime VAR BYTE : SamTime = 12
SYSVolts VAR BYTE : SYSVolts = 5
DirtyMem VAR BIT : DirtyMem = 1
TurStatus VAR BIT : TurStatus = 1
LogData VAR BIT : LogData = 1
PCCommand VAR BYTE : PCCommand = 0
ADDR VAR BYTE : ADDR = 0
Cont VAR BYTE : Cont = 0
Serout2 SO,32,[" ITCV2.0 Turbine Controller (SW - V1.0) System Voltage is ",Dec SYSVolts," Volts", 10,13]
Serout2 SO,32,[" < ",HEX2 RTCHr,":",HEX2 RTCMin,":",HEX2 RTCSec," ",HEX2 RTCMonth,"/",HEX2 RTCDate,"/",HEX2 RTCYear," Sample time = ",Dec SamTime," Sec >",10,10,13]
If DirtyMem <> 255 Then
Serout2 SO,32,[27,91,53,109," MEMORY Contains DATA!",27,91,48,109,10,10,13] ' flash the text
EndIf
If TurStatus <> 255 Then
Serout2 SO,32,[27,91,53,102," TURBINE IS DE-ACTIVATED!",27,91,48,109,10,10,13] ' flash the text
EndIf
Serout2 SO,32,[ " (1) Turbine Setup Menu (2) Download Memory Banks",13,10]
Serout2 SO,32,[ " (3) Erase Memory Banks (4) Set the sample time",13,10]
Serout2 SO,32,[ " (5) Set the Clock (6) Log Data ("]
If LogData = 1 Then
Serout2 SO,32,[ "ON)",13,10]
Else
Serout2 SO,32,[ "OFF)",13,10,13,10]
EndIf
Serout2 SO,32,[ " (C) CLEAR THE SCREEN",10,13]
Serout2 SO,32,[ "HOLD (A) while LOGGING returns to this menu",13,10]
SerIn2 SI,32,[PCCommand]
If PCCommand = 49 Then TurbineSetup
If PCCommand = 51 Then ClrMem
If PCCommand = 53 Then SetClock
If PCCommand = 52 Then SampleTime
If PCCommand = 67 Or PCCommand = 99 Then Menu
If PCCommand = 54 Then
If LogData = 0 Then LogData = 1:GoTo Menu
If LogData = 1 Then LogData = 0:GoTo Menu
EndIf
If PCCommand = 50 Then
Serout2 SO,32,[ 13,10]
ADDR = 0
Cont = Bank0A
GoTo DumpMem
EndIf
TurbineSetup:
ClrMem:
SetClock:
SampleTime:
Menu:
DumpMem:
And here is what it displayed ...
Bookmarks