Subversion Repositories svnkaklik

Compare Revisions

Ignore whitespace Rev 321 → Rev 322

/roboti/Robiada/2007/SW/robot/_.obj
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/roboti/Robiada/2007/SW/robot/makefile.gen
4,7 → 4,7
@"C:\Program Files\SourceBoost\boostbasic.pic18.exe" -t PIC18F252 _.bas
 
robot.hex: _.obj
@"C:\Program Files\SourceBoost\boostlink.pic.exe" /ld "C:\Program Files\SourceBoost\lib" libc.pic18.lib _.obj /t PIC18F252 /d "C:\Documents and Settings\katka\Plocha\SW\robot" /p robot -rb 0x200
@"C:\Program Files\SourceBoost\boostlink.pic.exe" /ld "C:\Program Files\SourceBoost\lib" libc.pic18.lib _.obj /t PIC18F252 /d "C:\Documents and Settings\Robiada\Desktop\SW\robot" /p robot -rb 0x200
 
all: robot.hex
 
/roboti/Robiada/2007/SW/robot/robot.asm
104,64 → 104,42
gbl_tosh EQU 0x00000FFE ; bytes:1
gbl_tosu EQU 0x00000FFF ; bytes:1
CompTempVarRet489 EQU 0x00000007 ; bytes:1
send_00000_arg_c EQU 0x00000004 ; bytes:1
delay_00000_arg_cas EQU 0x00000004 ; bytes:1
delay_00000_1_i EQU 0x00000005 ; bytes:1
delay_00000_1_x EQU 0x00000006 ; bytes:1
send_00000_arg_c EQU 0x00000007 ; bytes:1
main_1_motors EQU 0x00000001 ; bytes:1
main_1_sensors EQU 0x00000002 ; bytes:1
CompTempVar491 EQU 0x00000003 ; bytes:1
main_1_leds EQU 0x00000003 ; bytes:1
main_1_count EQU 0x00000004 ; bytes:2
CompTempVar491 EQU 0x00000006 ; bytes:1
CompTempVar492 EQU 0x00000007 ; bytes:1
ORG 0x00000200
GOTO _startup
ORG 0x00000204
send_00000
; { send ; function begin
label268438562
BTFSS gbl_pir1,4
BRA label268438562
MOVF send_00000_arg_c, W
MOVWF gbl_txreg
RETURN
; } send function end
 
ORG 0x0000020E
receive_00000
; { receive ; function begin
BTFSS gbl_rcsta,1
BRA label268438550
BRA label268438551
BCF gbl_rcsta,4
BSF gbl_rcsta,4
label268438550
label268438551
BTFSS gbl_pir1,5
BRA label268438550
BRA label268438551
MOVF gbl_rcreg, W
MOVWF CompTempVarRet489
RETURN
; } receive function end
 
ORG 0x00000216
send_00000
; { send ; function begin
label268438561
BTFSS gbl_pir1,4
BRA label268438561
MOVF send_00000_arg_c, W
MOVWF gbl_txreg
RETURN
; } send function end
 
ORG 0x00000220
delay_00000
; { delay ; function begin
label268438570
MOVF delay_00000_1_i, W
SUBWF delay_00000_arg_cas, W
BTFSS STATUS,C
RETURN
label4026532417
MOVF delay_00000_1_x, W
SUBLW 0x64
BNC label268438574
CALL receive_00000
INCF delay_00000_1_x, W
MOVWF delay_00000_1_x
BRA label4026532417
label268438574
INCF delay_00000_1_i, W
MOVWF delay_00000_1_i
BRA label268438570
; } delay function end
 
ORG 0x0000023E
main
; { main ; function begin
SETF gbl_lata
192,32 → 170,44
IORWF gbl_rcsta, W
MOVWF gbl_rcsta
CLRF main_1_motors
MOVLW 0x0E
label268438598
BTFSC gbl_portb,0
BRA label268438598
MOVLW 0xF0
MOVWF main_1_leds
MOVLW 0x80
MOVWF main_1_count
MOVLW 0x1A
MOVWF main_1_count+D'1'
label268438603
MOVF main_1_count, W
SUBLW 0x00
BTFSC STATUS,C
MOVF main_1_count+D'1', W
BZ label268438605
MOVLW 0x01
SUBWF main_1_count, W
MOVWF CompTempVar492
BTFSS STATUS,C
DECF main_1_count+D'1', F
MOVF CompTempVar492, W
MOVWF main_1_count
MOVLW 0x01
IORWF main_1_leds, W
MOVWF main_1_leds
MOVLW 0x02
IORWF main_1_leds, W
MOVWF main_1_leds
MOVLW 0x04
IORWF main_1_leds, W
MOVWF main_1_leds
MOVF main_1_leds, W
MOVWF gbl_lata
MOVLW 0xC8
MOVWF delay_00000_arg_cas
CALL delay_00000
MOVLW 0x0D
MOVWF gbl_lata
MOVLW 0xC8
MOVWF delay_00000_arg_cas
CALL delay_00000
MOVLW 0x0B
MOVWF gbl_lata
MOVLW 0xC8
MOVWF delay_00000_arg_cas
CALL delay_00000
MOVLW 0x07
MOVWF gbl_lata
MOVLW 0xC8
MOVWF delay_00000_arg_cas
CALL delay_00000
MOVLW 0x77
MOVWF main_1_motors
MOVLW 0x64
MOVWF delay_00000_arg_cas
CALL delay_00000
label268438640
BRA label268438603
label268438605
SETF main_1_leds
SETF gbl_lata
label268438623
SETF main_1_sensors
CALL receive_00000
MOVF CompTempVarRet489, W
224,35 → 214,35
MOVWF main_1_sensors
CLRF CompTempVar491
BTFSS main_1_sensors,1
BRA label268438645
BRA label268438628
BTFSS main_1_sensors,0
BRA label268438645
BRA label268438628
INCF CompTempVar491, F
label268438645
label268438628
MOVF CompTempVar491, F
BNZ label268438646
BNZ label268438629
MOVLW 0x77
MOVWF main_1_motors
label268438646
label268438629
BTFSC main_1_sensors,2
BRA label268438649
BRA label268438632
MOVLW 0xF7
MOVWF main_1_motors
label268438649
label268438632
BTFSC main_1_sensors,3
BRA label268438652
BRA label268438635
MOVLW 0x7F
MOVWF main_1_motors
label268438652
label268438635
MOVF main_1_sensors, W
MOVWF gbl_lata
MOVF main_1_motors, W
MOVWF send_00000_arg_c
CALL send_00000
BRA label268438640
BRA label268438623
; } main function end
 
ORG 0x000002EE
ORG 0x000002D8
_startup
GOTO main
ORG 0x00300000
/roboti/Robiada/2007/SW/robot/robot.bas
33,22 → 33,12
txreg = c
End Sub
 
Sub delay(cas As Byte)
Dim i As Byte
Dim x As Byte
Do while i <= cas
Do While x <= 100
Call receive()
x=x+1
loop
i=i+1
loop
End Sub
 
Sub main()
Dim motors As Byte
Dim sensors As Byte
Dim buttons As Byte
Dim leds As Byte
Dim count As word
Dim i As Long
 
'NASTAVENI IO
71,20 → 61,30
rcsta = rcsta | (1 << SPEN)
motors = 0x00
do while (portb.0 = 1)
loop
 
leds = 0xF0
count = 400000
lata = 0x0E
Call delay(200)
lata = 0x0D
Call delay(200)
lata = 0x0B
Call delay(200)
lata = 0x07
Call delay(200)
do while (count > 0)
count = count -1
if count < 300000 then
leds = leds | 1
end if
if count < 200000 then
leds = leds | 2
end if
if count < 100000 then
leds = leds | 4
end if
lata = leds
loop
leds = 0xFF
lata = 0xFF
 
motors = 0x77
 
Call delay(100)
 
Do while 1
 
/roboti/Robiada/2007/SW/robot/robot.brws
9,7 → 9,7
adresh C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 733;" d
adresl C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 732;" d
bsr C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 760;" d
buttons E:\SW\robot\robot.bas 51;" d
buttons C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 39;" d
ccp1con C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 727;" d
ccp2con C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 724;" d
ccpr1h C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 729;" d
16,7 → 16,7
ccpr1l C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 728;" d
ccpr2h C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 726;" d
ccpr2l C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 725;" d
delay E:\SW\robot\robot.bas 36;" s
count C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 41;" d
eeadr C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 715;" d
eecon1 C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 712;" d
eecon2 C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 713;" d
27,8 → 27,7
fsr1l C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 761;" d
fsr2h C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 754;" d
fsr2l C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 753;" d
i E:\SW\robot\robot.bas 37;" d
i E:\SW\robot\robot.bas 52;" d
i C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 42;" d
indf0 C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 775;" d
indf1 C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 767;" d
indf2 C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 759;" d
40,9 → 39,10
lata C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 700;" d
latb C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 701;" d
latc C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 702;" d
leds C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 40;" d
lvdcon C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 747;" d
main E:\SW\robot\robot.bas 48;" s
motors E:\SW\robot\robot.bas 49;" d
main C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 36;" s
motors C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 37;" d
osccon C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 748;" d
pcl C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 785;" d
pclath C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 786;" d
72,9 → 72,9
rcon C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 745;" d
rcreg C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 719;" d
rcsta C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 716;" d
receive E:\SW\robot\robot.bas 20;" f
send E:\SW\robot\robot.bas 31;" s
sensors E:\SW\robot\robot.bas 50;" d
receive C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 20;" f
send C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 31;" s
sensors C:\Documents and Settings\Robiada\Desktop\SW\robot\robot.bas 38;" d
spbrg C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 720;" d
sspadd C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 737;" d
sspbuf C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 738;" d
108,4 → 108,3
txsta C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 717;" d
wdtcon C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 746;" d
wreg C:\Program Files\SourceBoost\Include\basic\pic18F252.bas 768;" d
x E:\SW\robot\robot.bas 38;" d
/roboti/Robiada/2007/SW/robot/robot.casm
27,269 → 27,256
Function receive() As Byte
 
If ( (rcsta.OERR = 1) ) Then
0204 A2AB BTFSS gbl_rcsta,1
0206 D002 BRA label268438550
020C label268438550
020E A2AB BTFSS gbl_rcsta,1
0210 D002 BRA label268438551
0216 label268438551
 
rcsta.CREN = 0
0208 98AB BCF gbl_rcsta,4
0212 98AB BCF gbl_rcsta,4
 
rcsta.CREN = 1
020A 88AB BSF gbl_rcsta,4
0214 88AB BSF gbl_rcsta,4
 
End If
Do While (pir1.RCIF = 0)
020C AA9E BTFSS gbl_pir1,5
020E D7FE BRA label268438550
0216 AA9E BTFSS gbl_pir1,5
0218 D7FE BRA label268438551
 
Loop
receive = rcreg
0210 50AE MOVF gbl_rcreg, W
0212 6E07 MOVWF CompTempVarRet489
021A 50AE MOVF gbl_rcreg, W
021C 6E07 MOVWF CompTempVarRet489
 
End Function
0214 0012 RETURN
021E 0012 RETURN
 
 
Sub send(c As Byte)
 
Do while (pir1 & (1 << TXIF)) = 0 Loop
0216 label268438561
0216 A89E BTFSS gbl_pir1,4
0218 D7FE BRA label268438561
0204 label268438562
0204 A89E BTFSS gbl_pir1,4
0206 D7FE BRA label268438562
 
txreg = c
021A 5004 MOVF send_00000_arg_c, W
021C 6EAD MOVWF gbl_txreg
0208 5007 MOVF send_00000_arg_c, W
020A 6EAD MOVWF gbl_txreg
 
End Sub
021E 0012 RETURN
020C 0012 RETURN
 
 
Sub delay(cas As Byte)
 
Dim i As Byte
Dim x As Byte
Do while i <= cas
0220 label268438570
0220 5005 MOVF delay_00000_1_i, W
0222 5C04 SUBWF delay_00000_arg_cas, W
0224 A0D8 BTFSS STATUS,C
 
Do While x <= 100
0228 5006 MOVF delay_00000_1_x, W
022A 0864 SUBLW 0x64
022C E305 BNC label268438574
 
Call receive()
022E EC02F001 CALL receive_00000
 
x=x+1
0232 2806 INCF delay_00000_1_x, W
0234 6E06 MOVWF delay_00000_1_x
 
loop
0236 D7F8 BRA label4026532417
0238 label268438574
 
i=i+1
0238 2805 INCF delay_00000_1_i, W
023A 6E05 MOVWF delay_00000_1_i
 
loop
023C D7F1 BRA label268438570
 
End Sub
0226 0012 RETURN
0228 label4026532417
 
 
Sub main()
 
Dim motors As Byte
Dim sensors As Byte
Dim buttons As Byte
Dim leds As Byte
Dim count As word
Dim i As Long
 
'NASTAVENI IO
lata=0xFF
023E 6889 SETF gbl_lata
0220 6889 SETF gbl_lata
 
latb=0
0240 6A8A CLRF gbl_latb
0222 6A8A CLRF gbl_latb
 
latc=0xFF
0242 688B SETF gbl_latc
0224 688B SETF gbl_latc
 
trisa=0xF0
0244 0EF0 MOVLW 0xF0
0246 6E92 MOVWF gbl_trisa
0226 0EF0 MOVLW 0xF0
0228 6E92 MOVWF gbl_trisa
 
trisb=0x3F
0248 0E3F MOVLW 0x3F
024A 6E93 MOVWF gbl_trisb
022A 0E3F MOVLW 0x3F
022C 6E93 MOVWF gbl_trisb
 
trisc=0x9F
024C 0E9F MOVLW 0x9F
024E 6E94 MOVWF gbl_trisc
022E 0E9F MOVLW 0x9F
0230 6E94 MOVWF gbl_trisc
 
 
'VYPNOUT ADC
adcon1=0xC6
0250 0EC6 MOVLW 0xC6
0252 6EC1 MOVWF gbl_adcon1
0232 0EC6 MOVLW 0xC6
0234 6EC1 MOVWF gbl_adcon1
 
adcon0=0xC0
0254 0EC0 MOVLW 0xC0
0256 6EC2 MOVWF gbl_adcon0
0236 0EC0 MOVLW 0xC0
0238 6EC2 MOVWF gbl_adcon0
 
 
'UART 9600bps
spbrg=64
0258 0E40 MOVLW 0x40
025A 6EAF MOVWF gbl_spbrg
023A 0E40 MOVLW 0x40
023C 6EAF MOVWF gbl_spbrg
 
txsta = txsta & ~(1 << BRGH)
025C 0EFB MOVLW 0xFB
025E 14AC ANDWF gbl_txsta, W
0260 6EAC MOVWF gbl_txsta
023E 0EFB MOVLW 0xFB
0240 14AC ANDWF gbl_txsta, W
0242 6EAC MOVWF gbl_txsta
 
txsta = txsta | (1 << TXEN)
0262 0E20 MOVLW 0x20
0264 10AC IORWF gbl_txsta, W
0266 6EAC MOVWF gbl_txsta
0244 0E20 MOVLW 0x20
0246 10AC IORWF gbl_txsta, W
0248 6EAC MOVWF gbl_txsta
 
rcsta = rcsta | (1 << CREN)
0268 0E10 MOVLW 0x10
026A 10AB IORWF gbl_rcsta, W
026C 6EAB MOVWF gbl_rcsta
024A 0E10 MOVLW 0x10
024C 10AB IORWF gbl_rcsta, W
024E 6EAB MOVWF gbl_rcsta
 
rcsta = rcsta | (1 << SPEN)
026E 0E80 MOVLW 0x80
0270 10AB IORWF gbl_rcsta, W
0272 6EAB MOVWF gbl_rcsta
0250 0E80 MOVLW 0x80
0252 10AB IORWF gbl_rcsta, W
0254 6EAB MOVWF gbl_rcsta
 
motors = 0x00
0274 6A01 CLRF main_1_motors
0256 6A01 CLRF main_1_motors
 
lata = 0x0E
0276 0E0E MOVLW 0x0E
0278 6E89 MOVWF gbl_lata
do while (portb.0 = 1)
0258 label268438598
0258 B081 BTFSC gbl_portb,0
025A D7FE BRA label268438598
 
Call delay(200)
027A 0EC8 MOVLW 0xC8
027C 6E04 MOVWF delay_00000_arg_cas
027E EC10F001 CALL delay_00000
loop
 
lata = 0x0D
0282 0E0D MOVLW 0x0D
0284 6E89 MOVWF gbl_lata
leds = 0xF0
025C 0EF0 MOVLW 0xF0
025E 6E03 MOVWF main_1_leds
 
Call delay(200)
0286 0EC8 MOVLW 0xC8
0288 6E04 MOVWF delay_00000_arg_cas
028A EC10F001 CALL delay_00000
count = 400000
0260 0E80 MOVLW 0x80
0262 6E04 MOVWF main_1_count
0264 0E1A MOVLW 0x1A
0266 6E05 MOVWF main_1_count+D'1'
 
lata = 0x0B
028E 0E0B MOVLW 0x0B
0290 6E89 MOVWF gbl_lata
do while (count > 0)
0268 label268438603
0268 5004 MOVF main_1_count, W
026A 0800 SUBLW 0x00
026C B0D8 BTFSC STATUS,C
026E 5005 MOVF main_1_count+D'1', W
0270 E013 BZ label268438605
 
Call delay(200)
0292 0EC8 MOVLW 0xC8
0294 6E04 MOVWF delay_00000_arg_cas
0296 EC10F001 CALL delay_00000
count = count -1
0272 0E01 MOVLW 0x01
0274 5C04 SUBWF main_1_count, W
0276 6E07 MOVWF CompTempVar492
0278 A0D8 BTFSS STATUS,C
027A 0605 DECF main_1_count+D'1', F
027C 5007 MOVF CompTempVar492, W
027E 6E04 MOVWF main_1_count
 
lata = 0x07
029A 0E07 MOVLW 0x07
029C 6E89 MOVWF gbl_lata
if count < 300000 then
leds = leds | 1
0280 0E01 MOVLW 0x01
0282 1003 IORWF main_1_leds, W
0284 6E03 MOVWF main_1_leds
 
Call delay(200)
029E 0EC8 MOVLW 0xC8
02A0 6E04 MOVWF delay_00000_arg_cas
02A2 EC10F001 CALL delay_00000
end if
if count < 200000 then
leds = leds | 2
0286 0E02 MOVLW 0x02
0288 1003 IORWF main_1_leds, W
028A 6E03 MOVWF main_1_leds
 
end if
if count < 100000 then
leds = leds | 4
028C 0E04 MOVLW 0x04
028E 1003 IORWF main_1_leds, W
0290 6E03 MOVWF main_1_leds
 
motors = 0x77
02A6 0E77 MOVLW 0x77
02A8 6E01 MOVWF main_1_motors
end if
lata = leds
0292 5003 MOVF main_1_leds, W
0294 6E89 MOVWF gbl_lata
 
loop
0296 D7E8 BRA label268438603
0298 label268438605
 
Call delay(100)
02AA 0E64 MOVLW 0x64
02AC 6E04 MOVWF delay_00000_arg_cas
02AE EC10F001 CALL delay_00000
leds = 0xFF
0298 6803 SETF main_1_leds
 
lata = 0xFF
029A 6889 SETF gbl_lata
 
 
Do while 1
02B2 label268438640
029C label268438623
 
 
sensors =0xFF
02B2 6802 SETF main_1_sensors
029C 6802 SETF main_1_sensors
 
sensors = Call receive() 'prijmi stav cidel senzoru
02B4 EC02F001 CALL receive_00000
02B8 5007 MOVF CompTempVarRet489, W
02BA 6E02 MOVWF main_1_sensors
029E EC07F001 CALL receive_00000
02A2 5007 MOVF CompTempVarRet489, W
02A4 6E02 MOVWF main_1_sensors
 
If (!((sensors.0) and (sensors.1))) Then
02BC 6A03 CLRF CompTempVar491
02BE A202 BTFSS main_1_sensors,1
02C0 D003 BRA label268438645
02C2 A002 BTFSS main_1_sensors,0
02C4 D001 BRA label268438645
02C6 2A03 INCF CompTempVar491, F
02C8 label268438645
02C8 5203 MOVF CompTempVar491, F
02CA E102 BNZ label268438646
02D0 label268438646
02A6 6A06 CLRF CompTempVar491
02A8 A202 BTFSS main_1_sensors,1
02AA D003 BRA label268438628
02AC A002 BTFSS main_1_sensors,0
02AE D001 BRA label268438628
02B0 2A06 INCF CompTempVar491, F
02B2 label268438628
02B2 5206 MOVF CompTempVar491, F
02B4 E102 BNZ label268438629
02BA label268438629
 
motors = 0x77
02CC 0E77 MOVLW 0x77
02CE 6E01 MOVWF main_1_motors
02B6 0E77 MOVLW 0x77
02B8 6E01 MOVWF main_1_motors
 
End If
If (!(sensors.2)) Then
02D0 B402 BTFSC main_1_sensors,2
02D2 D002 BRA label268438649
02D8 label268438649
02BA B402 BTFSC main_1_sensors,2
02BC D002 BRA label268438632
02C2 label268438632
 
motors = 0xF7
02D4 0EF7 MOVLW 0xF7
02D6 6E01 MOVWF main_1_motors
02BE 0EF7 MOVLW 0xF7
02C0 6E01 MOVWF main_1_motors
 
End If
If (!(sensors.3)) Then
02D8 B602 BTFSC main_1_sensors,3
02DA D002 BRA label268438652
02E0 label268438652
02C2 B602 BTFSC main_1_sensors,3
02C4 D002 BRA label268438635
02CA label268438635
 
motors = 0x7F
02DC 0E7F MOVLW 0x7F
02DE 6E01 MOVWF main_1_motors
02C6 0E7F MOVLW 0x7F
02C8 6E01 MOVWF main_1_motors
 
End If
lata = sensors
02E0 5002 MOVF main_1_sensors, W
02E2 6E89 MOVWF gbl_lata
02CA 5002 MOVF main_1_sensors, W
02CC 6E89 MOVWF gbl_lata
 
call send(motors)
02E4 5001 MOVF main_1_motors, W
02E6 6E04 MOVWF send_00000_arg_c
02E8 EC0BF001 CALL send_00000
02CE 5001 MOVF main_1_motors, W
02D0 6E07 MOVWF send_00000_arg_c
02D2 EC02F001 CALL send_00000
 
Loop
02EC D7E2 BRA label268438640
02D6 D7E2 BRA label268438623
 
End Sub
298,17 → 285,12
////////////////////////////////////////
// Code with no source :-)
////////////////////////////////////////
0200 EF77F001 GOTO _startup
0200 EF6CF001 GOTO _startup
 
 
02D8 _startup
02D8 EF10F001 GOTO main
 
 
 
 
 
02EE _startup
02EE EF1FF001 GOTO main
 
300000 FEFF DW 0xFEFF
300002 FEF6 DW 0xFEF6
300004 FEFF DW 0xFEFF
/roboti/Robiada/2007/SW/robot/robot.cof
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/roboti/Robiada/2007/SW/robot/robot.hex
1,20 → 1,18
:020000040000FA
:1002000077EF01F0ABA202D0AB98AB889EAAFED7E5
:10021000AE50076E12009EA8FED70450AD6E1200BD
:100220000550045CD8A012000650640805E302ECF7
:1002300001F00628066EF8D70528056EF1D7896803
:100240008A6A8B68F00E926E3F0E936E9F0E946ECC
:10025000C60EC16EC00EC26E400EAF6EFB0EAC1469
:10026000AC6E200EAC10AC6E100EAB10AB6E800EF0
:10027000AB10AB6E016A0E0E896EC80E046E10ECE8
:1002800001F00D0E896EC80E046E10EC01F00B0E1D
:10029000896EC80E046E10EC01F0070E896EC80E50
:1002A000046E10EC01F0770E016E640E046E10EC1B
:1002B00001F0026802EC01F00750026E036A02A22C
:1002C00003D002A001D0032A035202E1770E016E8F
:1002D00002B402D0F70E016E02B602D07F0E016E9C
:1002E0000250896E0150046E0BEC01F0E2D71FEF53
:0202F00001F01B
:100200006CEF01F09EA8FED70750AD6E1200ABA2B6
:1002100002D0AB98AB889EAAFED7AE50076E1200F4
:1002200089688A6A8B68F00E926E3F0E936E9F0EFD
:10023000946EC60EC16EC00EC26E400EAF6EFB0E47
:10024000AC14AC6E200EAC10AC6E100EAB10AB6EDE
:10025000800EAB10AB6E016A81B0FED7F00E036E5C
:10026000800E046E1A0E056E04500008D8B00550BA
:1002700013E0010E045C076ED8A005060750046E5B
:10028000010E0310036E020E0310036E040E031022
:10029000036E0350896EE8D703688968026807EC2B
:1002A00001F00750026E066A02A203D002A001D03C
:1002B000062A065202E1770E016E02B402D0F70E52
:1002C000016E02B602D07F0E016E0250896E01509F
:0C02D000076E02EC01F0E2D710EF01F025
:020000040030CA
:0E000000FFFEF6FEFFFEFBFFF03FFF9FFFBF7F
:00000001FF
/roboti/Robiada/2007/SW/robot/robot.lst
6,149 → 6,139
;/////////////////////////////////////////////////////////////////////////////////
 
ORG 0x00000200
0200 EF77F001 GOTO _startup
0200 EF6CF001 GOTO _startup
ORG 0x00000204
0204 receive_00000
0204 ; { receive ; function begin
0204 A2AB BTFSS gbl_rcsta,1
0206 D002 BRA label268438550
0208 98AB BCF gbl_rcsta,4
020A 88AB BSF gbl_rcsta,4
020C label268438550
020C AA9E BTFSS gbl_pir1,5
020E D7FE BRA label268438550
0210 50AE MOVF gbl_rcreg, W
0212 6E07 MOVWF CompTempVarRet489
0214 0012 RETURN
0216 ; } receive function end
0204 send_00000
0204 ; { send ; function begin
0204 label268438562
0204 A89E BTFSS gbl_pir1,4
0206 D7FE BRA label268438562
0208 5007 MOVF send_00000_arg_c, W
020A 6EAD MOVWF gbl_txreg
020C 0012 RETURN
020E ; } send function end
 
ORG 0x00000216
0216 send_00000
0216 ; { send ; function begin
0216 label268438561
0216 A89E BTFSS gbl_pir1,4
0218 D7FE BRA label268438561
021A 5004 MOVF send_00000_arg_c, W
021C 6EAD MOVWF gbl_txreg
ORG 0x0000020E
020E receive_00000
020E ; { receive ; function begin
020E A2AB BTFSS gbl_rcsta,1
0210 D002 BRA label268438551
0212 98AB BCF gbl_rcsta,4
0214 88AB BSF gbl_rcsta,4
0216 label268438551
0216 AA9E BTFSS gbl_pir1,5
0218 D7FE BRA label268438551
021A 50AE MOVF gbl_rcreg, W
021C 6E07 MOVWF CompTempVarRet489
021E 0012 RETURN
0220 ; } send function end
0220 ; } receive function end
 
ORG 0x00000220
0220 delay_00000
0220 ; { delay ; function begin
0220 label268438570
0220 5005 MOVF delay_00000_1_i, W
0222 5C04 SUBWF delay_00000_arg_cas, W
0224 A0D8 BTFSS STATUS,C
0226 0012 RETURN
0228 label4026532417
0228 5006 MOVF delay_00000_1_x, W
022A 0864 SUBLW 0x64
022C E305 BNC label268438574
022E EC02F001 CALL receive_00000
0232 2806 INCF delay_00000_1_x, W
0234 6E06 MOVWF delay_00000_1_x
0236 D7F8 BRA label4026532417
0238 label268438574
0238 2805 INCF delay_00000_1_i, W
023A 6E05 MOVWF delay_00000_1_i
023C D7F1 BRA label268438570
023E ; } delay function end
0220 main
0220 ; { main ; function begin
0220 6889 SETF gbl_lata
0222 6A8A CLRF gbl_latb
0224 688B SETF gbl_latc
0226 0EF0 MOVLW 0xF0
0228 6E92 MOVWF gbl_trisa
022A 0E3F MOVLW 0x3F
022C 6E93 MOVWF gbl_trisb
022E 0E9F MOVLW 0x9F
0230 6E94 MOVWF gbl_trisc
0232 0EC6 MOVLW 0xC6
0234 6EC1 MOVWF gbl_adcon1
0236 0EC0 MOVLW 0xC0
0238 6EC2 MOVWF gbl_adcon0
023A 0E40 MOVLW 0x40
023C 6EAF MOVWF gbl_spbrg
023E 0EFB MOVLW 0xFB
0240 14AC ANDWF gbl_txsta, W
0242 6EAC MOVWF gbl_txsta
0244 0E20 MOVLW 0x20
0246 10AC IORWF gbl_txsta, W
0248 6EAC MOVWF gbl_txsta
024A 0E10 MOVLW 0x10
024C 10AB IORWF gbl_rcsta, W
024E 6EAB MOVWF gbl_rcsta
0250 0E80 MOVLW 0x80
0252 10AB IORWF gbl_rcsta, W
0254 6EAB MOVWF gbl_rcsta
0256 6A01 CLRF main_1_motors
0258 label268438598
0258 B081 BTFSC gbl_portb,0
025A D7FE BRA label268438598
025C 0EF0 MOVLW 0xF0
025E 6E03 MOVWF main_1_leds
0260 0E80 MOVLW 0x80
0262 6E04 MOVWF main_1_count
0264 0E1A MOVLW 0x1A
0266 6E05 MOVWF main_1_count+D'1'
0268 label268438603
0268 5004 MOVF main_1_count, W
026A 0800 SUBLW 0x00
026C B0D8 BTFSC STATUS,C
026E 5005 MOVF main_1_count+D'1', W
0270 E013 BZ label268438605
0272 0E01 MOVLW 0x01
0274 5C04 SUBWF main_1_count, W
0276 6E07 MOVWF CompTempVar492
0278 A0D8 BTFSS STATUS,C
027A 0605 DECF main_1_count+D'1', F
027C 5007 MOVF CompTempVar492, W
027E 6E04 MOVWF main_1_count
0280 0E01 MOVLW 0x01
0282 1003 IORWF main_1_leds, W
0284 6E03 MOVWF main_1_leds
0286 0E02 MOVLW 0x02
0288 1003 IORWF main_1_leds, W
028A 6E03 MOVWF main_1_leds
028C 0E04 MOVLW 0x04
028E 1003 IORWF main_1_leds, W
0290 6E03 MOVWF main_1_leds
0292 5003 MOVF main_1_leds, W
0294 6E89 MOVWF gbl_lata
0296 D7E8 BRA label268438603
0298 label268438605
0298 6803 SETF main_1_leds
029A 6889 SETF gbl_lata
029C label268438623
029C 6802 SETF main_1_sensors
029E EC07F001 CALL receive_00000
02A2 5007 MOVF CompTempVarRet489, W
02A4 6E02 MOVWF main_1_sensors
02A6 6A06 CLRF CompTempVar491
02A8 A202 BTFSS main_1_sensors,1
02AA D003 BRA label268438628
02AC A002 BTFSS main_1_sensors,0
02AE D001 BRA label268438628
02B0 2A06 INCF CompTempVar491, F
02B2 label268438628
02B2 5206 MOVF CompTempVar491, F
02B4 E102 BNZ label268438629
02B6 0E77 MOVLW 0x77
02B8 6E01 MOVWF main_1_motors
02BA label268438629
02BA B402 BTFSC main_1_sensors,2
02BC D002 BRA label268438632
02BE 0EF7 MOVLW 0xF7
02C0 6E01 MOVWF main_1_motors
02C2 label268438632
02C2 B602 BTFSC main_1_sensors,3
02C4 D002 BRA label268438635
02C6 0E7F MOVLW 0x7F
02C8 6E01 MOVWF main_1_motors
02CA label268438635
02CA 5002 MOVF main_1_sensors, W
02CC 6E89 MOVWF gbl_lata
02CE 5001 MOVF main_1_motors, W
02D0 6E07 MOVWF send_00000_arg_c
02D2 EC02F001 CALL send_00000
02D6 D7E2 BRA label268438623
02D8 ; } main function end
 
ORG 0x0000023E
023E main
023E ; { main ; function begin
023E 6889 SETF gbl_lata
0240 6A8A CLRF gbl_latb
0242 688B SETF gbl_latc
0244 0EF0 MOVLW 0xF0
0246 6E92 MOVWF gbl_trisa
0248 0E3F MOVLW 0x3F
024A 6E93 MOVWF gbl_trisb
024C 0E9F MOVLW 0x9F
024E 6E94 MOVWF gbl_trisc
0250 0EC6 MOVLW 0xC6
0252 6EC1 MOVWF gbl_adcon1
0254 0EC0 MOVLW 0xC0
0256 6EC2 MOVWF gbl_adcon0
0258 0E40 MOVLW 0x40
025A 6EAF MOVWF gbl_spbrg
025C 0EFB MOVLW 0xFB
025E 14AC ANDWF gbl_txsta, W
0260 6EAC MOVWF gbl_txsta
0262 0E20 MOVLW 0x20
0264 10AC IORWF gbl_txsta, W
0266 6EAC MOVWF gbl_txsta
0268 0E10 MOVLW 0x10
026A 10AB IORWF gbl_rcsta, W
026C 6EAB MOVWF gbl_rcsta
026E 0E80 MOVLW 0x80
0270 10AB IORWF gbl_rcsta, W
0272 6EAB MOVWF gbl_rcsta
0274 6A01 CLRF main_1_motors
0276 0E0E MOVLW 0x0E
0278 6E89 MOVWF gbl_lata
027A 0EC8 MOVLW 0xC8
027C 6E04 MOVWF delay_00000_arg_cas
027E EC10F001 CALL delay_00000
0282 0E0D MOVLW 0x0D
0284 6E89 MOVWF gbl_lata
0286 0EC8 MOVLW 0xC8
0288 6E04 MOVWF delay_00000_arg_cas
028A EC10F001 CALL delay_00000
028E 0E0B MOVLW 0x0B
0290 6E89 MOVWF gbl_lata
0292 0EC8 MOVLW 0xC8
0294 6E04 MOVWF delay_00000_arg_cas
0296 EC10F001 CALL delay_00000
029A 0E07 MOVLW 0x07
029C 6E89 MOVWF gbl_lata
029E 0EC8 MOVLW 0xC8
02A0 6E04 MOVWF delay_00000_arg_cas
02A2 EC10F001 CALL delay_00000
02A6 0E77 MOVLW 0x77
02A8 6E01 MOVWF main_1_motors
02AA 0E64 MOVLW 0x64
02AC 6E04 MOVWF delay_00000_arg_cas
02AE EC10F001 CALL delay_00000
02B2 label268438640
02B2 6802 SETF main_1_sensors
02B4 EC02F001 CALL receive_00000
02B8 5007 MOVF CompTempVarRet489, W
02BA 6E02 MOVWF main_1_sensors
02BC 6A03 CLRF CompTempVar491
02BE A202 BTFSS main_1_sensors,1
02C0 D003 BRA label268438645
02C2 A002 BTFSS main_1_sensors,0
02C4 D001 BRA label268438645
02C6 2A03 INCF CompTempVar491, F
02C8 label268438645
02C8 5203 MOVF CompTempVar491, F
02CA E102 BNZ label268438646
02CC 0E77 MOVLW 0x77
02CE 6E01 MOVWF main_1_motors
02D0 label268438646
02D0 B402 BTFSC main_1_sensors,2
02D2 D002 BRA label268438649
02D4 0EF7 MOVLW 0xF7
02D6 6E01 MOVWF main_1_motors
02D8 label268438649
02D8 B602 BTFSC main_1_sensors,3
02DA D002 BRA label268438652
02DC 0E7F MOVLW 0x7F
02DE 6E01 MOVWF main_1_motors
02E0 label268438652
02E0 5002 MOVF main_1_sensors, W
02E2 6E89 MOVWF gbl_lata
02E4 5001 MOVF main_1_motors, W
02E6 6E04 MOVWF send_00000_arg_c
02E8 EC0BF001 CALL send_00000
02EC D7E2 BRA label268438640
02EE ; } main function end
 
ORG 0x000002EE
02EE _startup
02EE EF1FF001 GOTO main
ORG 0x000002D8
02D8 _startup
02D8 EF10F001 GOTO main
ORG 0x00300000
300000 FEFF DW 0xFEFF
300002 FEF6 DW 0xFEF6
/roboti/Robiada/2007/SW/robot/robot.stat
3,7 → 3,6
#GLOBAL:"global",line = 0,ram = 0.0,rom = 0;
receive(void):"robot.bas",line = 21,ram = 1.0,rom = 18;
send(unsigned char):"robot.bas",line = 32,ram = 0.0,rom = 10;
delay(unsigned char):"robot.bas",line = 39,ram = 3.0,rom = 30;
main(void):"robot.bas",line = 56,ram = 3.4,rom = 176;
main(void):"robot.bas",line = 45,ram = 7.4,rom = 184;
_startup(void):"NoSourceFile",line = 0,ram = 0.0,rom = 4;
#HEAP_BLOCK: 0, 8, 1528;
/roboti/Robiada/2007/SW/robot/robot.tree
1,17 → 1,7
// SourceBoost Linker Call Tree Dump
 
_startup:"NoSourceFile",line = 0
{ main:"robot.bas",line = 49
{ delay:"robot.bas",line = 36
{ receive:"robot.bas",line = 20
{ } } delay:"robot.bas",line = 36
{ receive:"robot.bas",line = 20
{ } } delay:"robot.bas",line = 36
{ receive:"robot.bas",line = 20
{ } } delay:"robot.bas",line = 36
{ receive:"robot.bas",line = 20
{ } } delay:"robot.bas",line = 36
{ receive:"robot.bas",line = 20
{ } } receive:"robot.bas",line = 20
{ main:"robot.bas",line = 36
{ receive:"robot.bas",line = 20
{ } send:"robot.bas",line = 31
{ } }}