; Assembly code generated by mikroVirtualMachine - V. 5.0.0.3

; Date/Time: 10/05/2007 20:05:21

; Info:

; ADDRESSOPCODEASM

; ------

$0000$158ABSFPCLATH, 3

$0001$2800GOTO_main

$0004$_delay_1us:

;delays.pbas,5 :: sub procedure Delay_1us

;delays.pbas,6 :: Delay_us(1)

$0004$0000NOP

$0005$0000NOP

$0006$delays_L_0:

$0006$0008RETURN

$0007$_delay_5500us:

;delays.pbas,29 :: sub procedure Delay_5500us

;delays.pbas,30 :: Delay_us(5500)

$0007$300FMOVLW15

$0008$1303BCFSTATUS, RP1

$0009$1283BCFSTATUS, RP0

$000A$00FBMOVWFSTACK_11

$000B$30FFMOVLW255

$000C$00FAMOVWFSTACK_10

$000D$0BFBDECFSZSTACK_11, F

$000E$2810GOTO$+2

$000F$2813GOTO$+4

$0010$0BFADECFSZSTACK_10, F

$0011$2810GOTO$-1

$0012$280DGOTO$-5

$0013$303EMOVLW62

$0014$00FAMOVWFSTACK_10

$0015$0BFADECFSZSTACK_10, F

$0016$2815GOTO$-1

$0017$0000NOP

$0018$delays_L_6:

$0018$0008RETURN

$0019$_delay_50us:

;delays.pbas,17 :: sub procedure Delay_50us

;delays.pbas,18 :: Delay_us(50)

$0019$3021MOVLW33

$001A$1303BCFSTATUS, RP1

$001B$1283BCFSTATUS, RP0

$001C$00FAMOVWFSTACK_10

$001D$0BFADECFSZSTACK_10, F

$001E$281DGOTO$-1

$001F$delays_L_3:

$001F$0008RETURN

$0020$_lcd8_cmd:

;__lib_lcd8custom.ppas,56 ::

;__lib_lcd8custom.ppas,58 ::

$0020$1303BCFSTATUS, RP1

$0021$1283BCFSTATUS, RP0

$0022$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$0023$0084MOVWFFSR

$0024$0180CLRFINDF, 1

;__lib_lcd8custom.ppas,59 ::

$0025$3000MOVLW0

$0026$1683BSFSTATUS, RP0

$0027$1BC6BTFSCFARG_Lcd8_Cmd, 7

$0028$3001MOVLW1

$0029$00F1MOVWFSTACK_1

$002A$0871MOVFSTACK_1, 0

$002B$3A00XORLW0

$002C$1903BTFSCSTATUS, Z

$002D$2839GOTO__lib_lcd8custom_L_2

$002E$__lib_lcd8custom_L_1:

;__lib_lcd8custom.ppas,60 ::

$002E$1283BCFSTATUS, RP0

$002F$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$0030$0084MOVWFFSR

$0031$0800MOVFINDF, 0

$0032$00F0MOVWFSTACK_0

$0033$0822MOVF__lib_lcd8custom___lcd8_db7, 0

$0034$04F0IORWFSTACK_0, 1

$0035$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$0036$0084MOVWFFSR

$0037$0870MOVFSTACK_0, 0

$0038$0080MOVWFINDF

$0039$__lib_lcd8custom_L_2:

$0039$__lib_lcd8custom_L_3:

$0039$1303BCFSTATUS, RP1

$003A$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,61 ::

$003B$3000MOVLW0

$003C$1683BSFSTATUS, RP0

$003D$1B46BTFSCFARG_Lcd8_Cmd, 6

$003E$3001MOVLW1

$003F$00F1MOVWFSTACK_1

$0040$0871MOVFSTACK_1, 0

$0041$3A00XORLW0

$0042$1903BTFSCSTATUS, Z

$0043$284FGOTO__lib_lcd8custom_L_5

$0044$__lib_lcd8custom_L_4:

;__lib_lcd8custom.ppas,62 ::

$0044$1283BCFSTATUS, RP0

$0045$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$0046$0084MOVWFFSR

$0047$0800MOVFINDF, 0

$0048$00F0MOVWFSTACK_0

$0049$0823MOVF__lib_lcd8custom___lcd8_db6, 0

$004A$04F0IORWFSTACK_0, 1

$004B$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$004C$0084MOVWFFSR

$004D$0870MOVFSTACK_0, 0

$004E$0080MOVWFINDF

$004F$__lib_lcd8custom_L_5:

$004F$__lib_lcd8custom_L_6:

$004F$1303BCFSTATUS, RP1

$0050$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,63 ::

$0051$3000MOVLW0

$0052$1683BSFSTATUS, RP0

$0053$1AC6BTFSCFARG_Lcd8_Cmd, 5

$0054$3001MOVLW1

$0055$00F1MOVWFSTACK_1

$0056$0871MOVFSTACK_1, 0

$0057$3A00XORLW0

$0058$1903BTFSCSTATUS, Z

$0059$2865GOTO__lib_lcd8custom_L_8

$005A$__lib_lcd8custom_L_7:

;__lib_lcd8custom.ppas,64 ::

$005A$1283BCFSTATUS, RP0

$005B$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$005C$0084MOVWFFSR

$005D$0800MOVFINDF, 0

$005E$00F0MOVWFSTACK_0

$005F$0824MOVF__lib_lcd8custom___lcd8_db5, 0

$0060$04F0IORWFSTACK_0, 1

$0061$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$0062$0084MOVWFFSR

$0063$0870MOVFSTACK_0, 0

$0064$0080MOVWFINDF

$0065$__lib_lcd8custom_L_8:

$0065$__lib_lcd8custom_L_9:

$0065$1303BCFSTATUS, RP1

$0066$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,65 ::

$0067$3000MOVLW0

$0068$1683BSFSTATUS, RP0

$0069$1A46BTFSCFARG_Lcd8_Cmd, 4

$006A$3001MOVLW1

$006B$00F1MOVWFSTACK_1

$006C$0871MOVFSTACK_1, 0

$006D$3A00XORLW0

$006E$1903BTFSCSTATUS, Z

$006F$287BGOTO__lib_lcd8custom_L_11

$0070$__lib_lcd8custom_L_10:

;__lib_lcd8custom.ppas,66 ::

$0070$1283BCFSTATUS, RP0

$0071$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$0072$0084MOVWFFSR

$0073$0800MOVFINDF, 0

$0074$00F0MOVWFSTACK_0

$0075$0825MOVF__lib_lcd8custom___lcd8_db4, 0

$0076$04F0IORWFSTACK_0, 1

$0077$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$0078$0084MOVWFFSR

$0079$0870MOVFSTACK_0, 0

$007A$0080MOVWFINDF

$007B$__lib_lcd8custom_L_11:

$007B$__lib_lcd8custom_L_12:

$007B$1303BCFSTATUS, RP1

$007C$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,67 ::

$007D$3000MOVLW0

$007E$1683BSFSTATUS, RP0

$007F$19C6BTFSCFARG_Lcd8_Cmd, 3

$0080$3001MOVLW1

$0081$00F1MOVWFSTACK_1

$0082$0871MOVFSTACK_1, 0

$0083$3A00XORLW0

$0084$1903BTFSCSTATUS, Z

$0085$2891GOTO__lib_lcd8custom_L_14

$0086$__lib_lcd8custom_L_13:

;__lib_lcd8custom.ppas,68 ::

$0086$1283BCFSTATUS, RP0

$0087$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$0088$0084MOVWFFSR

$0089$0800MOVFINDF, 0

$008A$00F0MOVWFSTACK_0

$008B$0826MOVF__lib_lcd8custom___lcd8_db3, 0

$008C$04F0IORWFSTACK_0, 1

$008D$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$008E$0084MOVWFFSR

$008F$0870MOVFSTACK_0, 0

$0090$0080MOVWFINDF

$0091$__lib_lcd8custom_L_14:

$0091$__lib_lcd8custom_L_15:

$0091$1303BCFSTATUS, RP1

$0092$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,69 ::

$0093$3000MOVLW0

$0094$1683BSFSTATUS, RP0

$0095$1946BTFSCFARG_Lcd8_Cmd, 2

$0096$3001MOVLW1

$0097$00F1MOVWFSTACK_1

$0098$0871MOVFSTACK_1, 0

$0099$3A00XORLW0

$009A$1903BTFSCSTATUS, Z

$009B$28A7GOTO__lib_lcd8custom_L_17

$009C$__lib_lcd8custom_L_16:

;__lib_lcd8custom.ppas,70 ::

$009C$1283BCFSTATUS, RP0

$009D$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$009E$0084MOVWFFSR

$009F$0800MOVFINDF, 0

$00A0$00F0MOVWFSTACK_0

$00A1$0827MOVF__lib_lcd8custom___lcd8_db2, 0

$00A2$04F0IORWFSTACK_0, 1

$00A3$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$00A4$0084MOVWFFSR

$00A5$0870MOVFSTACK_0, 0

$00A6$0080MOVWFINDF

$00A7$__lib_lcd8custom_L_17:

$00A7$__lib_lcd8custom_L_18:

$00A7$1303BCFSTATUS, RP1

$00A8$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,71 ::

$00A9$3000MOVLW0

$00AA$1683BSFSTATUS, RP0

$00AB$18C6BTFSCFARG_Lcd8_Cmd, 1

$00AC$3001MOVLW1

$00AD$00F1MOVWFSTACK_1

$00AE$0871MOVFSTACK_1, 0

$00AF$3A00XORLW0

$00B0$1903BTFSCSTATUS, Z

$00B1$28BDGOTO__lib_lcd8custom_L_20

$00B2$__lib_lcd8custom_L_19:

;__lib_lcd8custom.ppas,72 ::

$00B2$1283BCFSTATUS, RP0

$00B3$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$00B4$0084MOVWFFSR

$00B5$0800MOVFINDF, 0

$00B6$00F0MOVWFSTACK_0

$00B7$0828MOVF__lib_lcd8custom___lcd8_db1, 0

$00B8$04F0IORWFSTACK_0, 1

$00B9$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$00BA$0084MOVWFFSR

$00BB$0870MOVFSTACK_0, 0

$00BC$0080MOVWFINDF

$00BD$__lib_lcd8custom_L_20:

$00BD$__lib_lcd8custom_L_21:

$00BD$1303BCFSTATUS, RP1

$00BE$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,73 ::

$00BF$3001MOVLW1

$00C0$1683BSFSTATUS, RP0

$00C1$0546ANDWFFARG_Lcd8_Cmd, 0

$00C2$00F1MOVWFSTACK_1

$00C3$0871MOVFSTACK_1, 0

$00C4$3A00XORLW0

$00C5$1903BTFSCSTATUS, Z

$00C6$28D2GOTO__lib_lcd8custom_L_23

$00C7$__lib_lcd8custom_L_22:

;__lib_lcd8custom.ppas,74 ::

$00C7$1283BCFSTATUS, RP0

$00C8$0821MOVF__lib_lcd8custom__port_dataaddress, 0

$00C9$0084MOVWFFSR

$00CA$0800MOVFINDF, 0

$00CB$00F0MOVWFSTACK_0

$00CC$0829MOVF__lib_lcd8custom___lcd8_db0, 0

$00CD$04F0IORWFSTACK_0, 1

$00CE$0820MOVF__lib_lcd8custom__lat_dataaddress, 0

$00CF$0084MOVWFFSR

$00D0$0870MOVFSTACK_0, 0

$00D1$0080MOVWFINDF

$00D2$__lib_lcd8custom_L_23:

$00D2$__lib_lcd8custom_L_24:

$00D2$1303BCFSTATUS, RP1

$00D3$1283BCFSTATUS, RP0

;__lib_lcd8custom.ppas,76 ::

$00D4$082AMOVF__lib_lcd8custom__cmd, 0

$00D5$3A01XORLW1

$00D6$1D03BTFSSSTATUS, Z

$00D7$28E5GOTO__lib_lcd8custom_L_26

$00D8$__lib_lcd8custom_L_25:

;__lib_lcd8custom.ppas,77 ::

$00D8$082BMOVF__lib_lcd8custom__ctrladdress, 0

$00D9$0084MOVWFFSR

$00DA$0800MOVFINDF, 0

$00DB$00F1MOVWFSTACK_1

$00DC$092CCOMF__lib_lcd8custom___lcd8_rs, W

$00DD$00F0MOVWFSTACK_0

$00DE$0871MOVFSTACK_1, 0

$00DF$05F0ANDWFSTACK_0, 1

$00E0$082BMOVF__lib_lcd8custom__ctrladdress, 0

$00E1$0084MOVWFFSR

$00E2$0870MOVFSTACK_0, 0

$00E3$0080MOVWFINDF

$00E4$28EFGOTO__lib_lcd8custom_L_27

;__lib_lcd8custom.ppas,78 ::

$00E5$__lib_lcd8custom_L_26:

;__lib_lcd8custom.ppas,79 ::

$00E5$082BMOVF__lib_lcd8custom__ctrladdress, 0

$00E6$0084MOVWFFSR

$00E7$0800MOVFINDF, 0

$00E8$00F0MOVWFSTACK_0

$00E9$082CMOVF__lib_lcd8custom___lcd8_rs, 0

$00EA$04F0IORWFSTACK_0, 1

$00EB$082BMOVF__lib_lcd8custom__ctrladdress, 0

$00EC$0084MOVWFFSR

$00ED$0870MOVFSTACK_0, 0

$00EE$0080MOVWFINDF

$00EF$__lib_lcd8custom_L_27:

;__lib_lcd8custom.ppas,81 ::

$00EF$082BMOVF__lib_lcd8custom__ctrladdress, 0

$00F0$0084MOVWFFSR

$00F1$0800MOVFINDF, 0

$00F2$00F0MOVWFSTACK_0

$00F3$082DMOVF__lib_lcd8custom___lcd8_enable, 0

$00F4$04F0IORWFSTACK_0, 1

$00F5$082BMOVF__lib_lcd8custom__ctrladdress, 0

$00F6$0084MOVWFFSR

$00F7$0870MOVFSTACK_0, 0

$00F8$0080MOVWFINDF

;__lib_lcd8custom.ppas,82 ::

$00F9$2004CALL_delay_1us

;__lib_lcd8custom.ppas,83 ::

$00FA$082BMOVF__lib_lcd8custom__ctrladdress, 0

$00FB$0084MOVWFFSR

$00FC$0800MOVFINDF, 0

$00FD$00F1MOVWFSTACK_1

$00FE$092DCOMF__lib_lcd8custom___lcd8_enable, W

$00FF$00F0MOVWFSTACK_0

$0100$0871MOVFSTACK_1, 0

$0101$05F0ANDWFSTACK_0, 1

$0102$082BMOVF__lib_lcd8custom__ctrladdress, 0

$0103$0084MOVWFFSR

$0104$0870MOVFSTACK_0, 0

$0105$0080MOVWFINDF

;__lib_lcd8custom.ppas,84 ::

$0106$2004CALL_delay_1us

;__lib_lcd8custom.ppas,86 ::

$0107$082AMOVF__lib_lcd8custom__cmd, 0

$0108$3A01XORLW1

$0109$1D03BTFSSSTATUS, Z

$010A$290DGOTO__lib_lcd8custom_L_29

$010B$__lib_lcd8custom_L_28:

;__lib_lcd8custom.ppas,87 ::

$010B$2007CALL_delay_5500us

$010C$290EGOTO__lib_lcd8custom_L_30

;__lib_lcd8custom.ppas,88 ::

$010D$__lib_lcd8custom_L_29:

;__lib_lcd8custom.ppas,89 ::

$010D$2019CALL_delay_50us

$010E$__lib_lcd8custom_L_30:

$010E$__lib_lcd8custom_L_0:

;__lib_lcd8custom.ppas,90 ::

$010E$0008RETURN

$010F$_delay_22us:

;delays.pbas,13 :: sub procedure Delay_22us

;delays.pbas,14 :: Delay_us(22)

$010F$300EMOVLW14

$0110$1303BCFSTATUS, RP1

$0111$1283BCFSTATUS, RP0

$0112$00FAMOVWFSTACK_10

$0113$0BFADECFSZSTACK_10, F

$0114$2913GOTO$-1

$0115$0000NOP

$0116$delays_L_2:

$0116$0008RETURN

$0117$_div_16x16_u:

$0117$1303BCFSTATUS, RP1

$0118$1283BCFSTATUS, RP0

;math.ppas,107 ::

;math.ppas,110 ::

$0119$01F8CLRFSTACK_8

;math.ppas,111 ::

$011A$01F9CLRFSTACK_9

;math.ppas,112 ::

$011B$3010MOVLW16

;math.ppas,113 ::

$011C$00FCMOVWFSTACK_12

;math.ppas,114 ::

$011D$0D71RLFSTACK_1, W

;math.ppas,115 ::

$011E$0DF8RLFSTACK_8, F

;math.ppas,116 ::

$011F$0DF9RLFSTACK_9, F

;math.ppas,117 ::

$0120$0874MOVFSTACK_4, W

;math.ppas,118 ::

$0121$02F8SUBWFSTACK_8, F

;math.ppas,119 ::

$0122$0875MOVFSTACK_5, W

;math.ppas,120 ::

$0123$1C03BTFSSSTATUS, C

;math.ppas,121 ::

$0124$0F75INCFSZSTACK_5, W

;math.ppas,122 ::

$0125$02F9SUBWFSTACK_9, F

;math.ppas,123 ::

$0126$1803BTFSCSTATUS, C

;math.ppas,124 ::

$0127$292FGOTO$+8

;math.ppas,125 ::

$0128$0874MOVFSTACK_4, W

;math.ppas,126 ::

$0129$07F8ADDWFSTACK_8, F

;math.ppas,127 ::

$012A$0875MOVFSTACK_5, W

;math.ppas,128 ::

$012B$1803BTFSCSTATUS, C

;math.ppas,129 ::

$012C$0F75INCFSZSTACK_5, W

;math.ppas,130 ::

$012D$07F9ADDWFSTACK_9, F

;math.ppas,131 ::

$012E$1003BCFSTATUS, C

;math.ppas,132 ::

$012F$0DF0RLFSTACK_0, F

;math.ppas,133 ::

$0130$0DF1RLFSTACK_1, F

;math.ppas,134 ::

$0131$0BFCDECFSZSTACK_12, F

;math.ppas,135 ::

$0132$291DGOTO$-21

;math.ppas,136 ::

$0133$math_L_3:

;math.ppas,137 ::

$0133$0008RETURN

$0134$_lcd8_out:

;__lib_lcd8custom.ppas,169 ::

;__lib_lcd8custom.ppas,172 ::

$0134$__lib_lcd8custom_L_50:

$0134$1303BCFSTATUS, RP1

$0135$1683BSFSTATUS, RP0

$0136$0842MOVFFARG_Lcd8_Out, 0

$0137$3A01XORLW1

$0138$1D03BTFSSSTATUS, Z

$0139$293DGOTO__lib_lcd8custom_L_51

$013A$__lib_lcd8custom_L_49:

$013A$3080MOVLW128

$013B$00C2MOVWFFARG_Lcd8_Out

$013C$2954GOTO__lib_lcd8custom_L_48

$013D$__lib_lcd8custom_L_51:

;__lib_lcd8custom.ppas,173 ::

$013D$__lib_lcd8custom_L_53:

$013D$0842MOVFFARG_Lcd8_Out, 0

$013E$3A02XORLW2

$013F$1D03BTFSSSTATUS, Z

$0140$2944GOTO__lib_lcd8custom_L_54

$0141$__lib_lcd8custom_L_52:

$0141$30C0MOVLW192

$0142$00C2MOVWFFARG_Lcd8_Out

$0143$2954GOTO__lib_lcd8custom_L_48

$0144$__lib_lcd8custom_L_54:

;__lib_lcd8custom.ppas,174 ::

$0144$__lib_lcd8custom_L_56:

$0144$0842MOVFFARG_Lcd8_Out, 0

$0145$3A03XORLW3

$0146$1D03BTFSSSTATUS, Z

$0147$294BGOTO__lib_lcd8custom_L_57

$0148$__lib_lcd8custom_L_55:

$0148$3094MOVLW148

$0149$00C2MOVWFFARG_Lcd8_Out

$014A$2954GOTO__lib_lcd8custom_L_48

$014B$__lib_lcd8custom_L_57:

;__lib_lcd8custom.ppas,175 ::

$014B$__lib_lcd8custom_L_59:

$014B$0842MOVFFARG_Lcd8_Out, 0

$014C$3A04XORLW4

$014D$1D03BTFSSSTATUS, Z

$014E$2952GOTO__lib_lcd8custom_L_60

$014F$__lib_lcd8custom_L_58:

$014F$30D4MOVLW212

$0150$00C2MOVWFFARG_Lcd8_Out

;__lib_lcd8custom.ppas,176 ::

$0151$2954GOTO__lib_lcd8custom_L_48

$0152$__lib_lcd8custom_L_60:

;__lib_lcd8custom.ppas,177 ::

$0152$3080MOVLW128

$0153$00C2MOVWFFARG_Lcd8_Out

$0154$__lib_lcd8custom_L_48:

;__lib_lcd8custom.ppas,180 ::

$0154$0843MOVFFARG_Lcd8_Out+1, 0

$0155$0742ADDWFFARG_Lcd8_Out, 0

$0156$00F0MOVWFSTACK_0

$0157$03F0DECFSTACK_0, 1

$0158$0870MOVFSTACK_0, 0

$0159$00C2MOVWFFARG_Lcd8_Out

;__lib_lcd8custom.ppas,181 ::

$015A$3001MOVLW1

$015B$1283BCFSTATUS, RP0

$015C$00AAMOVWF__lib_lcd8custom__cmd

;__lib_lcd8custom.ppas,182 ::

$015D$0870MOVFSTACK_0, 0

$015E$1683BSFSTATUS, RP0

$015F$00C6MOVWFFARG_Lcd8_Cmd

$0160$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,184 ::

$0161$01AACLRF__lib_lcd8custom__cmd, 1

;__lib_lcd8custom.ppas,185 ::

$0162$1683BSFSTATUS, RP0

$0163$01C5CLRF_lcd8_out_local_i, 1

;__lib_lcd8custom.ppas,186 ::

$0164$__lib_lcd8custom_L_62:

$0164$0845MOVF_lcd8_out_local_i, 0

$0165$0744ADDWFFARG_Lcd8_Out+2, 0

$0166$00F0MOVWFSTACK_0

$0167$0870MOVFSTACK_0, 0

$0168$0084MOVWFFSR

$0169$0800MOVFINDF, 0

$016A$00F2MOVWFSTACK_2

$016B$0872MOVFSTACK_2, 0

$016C$3A00XORLW0

$016D$1903BTFSCSTATUS, Z

$016E$297AGOTO__lib_lcd8custom_L_63

;__lib_lcd8custom.ppas,188 ::

$016F$0845MOVF_lcd8_out_local_i, 0

$0170$0744ADDWFFARG_Lcd8_Out+2, 0

$0171$00F0MOVWFSTACK_0

$0172$0870MOVFSTACK_0, 0

$0173$0084MOVWFFSR

$0174$0800MOVFINDF, 0

$0175$00C6MOVWFFARG_Lcd8_Cmd

$0176$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,189 ::

$0177$1683BSFSTATUS, RP0

$0178$0AC5INCF_lcd8_out_local_i, 1

;__lib_lcd8custom.ppas,190 ::

$0179$2964GOTO__lib_lcd8custom_L_62

$017A$__lib_lcd8custom_L_63:

;__lib_lcd8custom.ppas,191 ::

$017A$3001MOVLW1

$017B$1283BCFSTATUS, RP0

$017C$00AAMOVWF__lib_lcd8custom__cmd

$017D$__lib_lcd8custom_L_47:

;__lib_lcd8custom.ppas,192 ::

$017D$0008RETURN

$017E$_adc_read:

;adclib_a_c.ppas,11 ::

;adclib_a_c.ppas,13 ::

$017E$1303BCFSTATUS, RP1

$017F$1283BCFSTATUS, RP0

$0180$019FCLRFADCON0, 1

;adclib_a_c.ppas,14 ::

$0181$30C0MOVLW192

$0182$049FIORWFADCON0, 1

;adclib_a_c.ppas,15 ::

$0183$3040MOVLW64

$0184$1683BSFSTATUS, RP0

$0185$041FIORWFADCON1, 0

$0186$00F0MOVWFSTACK_0

$0187$0870MOVFSTACK_0, 0

$0188$009FMOVWFADCON1

;adclib_a_c.ppas,17 ::

$0189$3080MOVLW128

$018A$0470IORWFSTACK_0, 0

$018B$009FMOVWFADCON1

;adclib_a_c.ppas,18 ::

$018C$0842MOVFFARG_ADC_read, 0

$018D$00F0MOVWFSTACK_0

$018E$0DF0RLFSTACK_0, 1

$018F$1070BCFSTACK_0, 0

$0190$0DF0RLFSTACK_0, 1

$0191$1070BCFSTACK_0, 0

$0192$0DF0RLFSTACK_0, 1

$0193$1070BCFSTACK_0, 0

$0194$0870MOVFSTACK_0, 0

$0195$1283BCFSTATUS, RP0

$0196$049FIORWFADCON0, 1

;adclib_a_c.ppas,19 ::

$0197$141FBSFADCON0, 0

;adclib_a_c.ppas,20 ::

$0198$210FCALL_delay_22us

;adclib_a_c.ppas,21 ::

$0199$151FBSFADCON0, 2

;adclib_a_c.ppas,22 ::

$019A$adclib_a_c_L_2:

$019A$3000MOVLW0

$019B$191FBTFSCADCON0, 2

$019C$3001MOVLW1

$019D$00F2MOVWFSTACK_2

$019E$0872MOVFSTACK_2, 0

$019F$3A01XORLW1

$01A0$1D03BTFSSSTATUS, Z

$01A1$29A4GOTOadclib_a_c_L_3

;adclib_a_c.ppas,23 ::

$01A2$0000NOP

$01A3$299AGOTOadclib_a_c_L_2

$01A4$adclib_a_c_L_3:

;adclib_a_c.ppas,24 ::

$01A4$081EMOVFADRESH, 0

$01A5$00F2MOVWFSTACK_2

$01A6$01F3CLRFSTACK_2+1

$01A7$0872MOVFSTACK_2, 0

$01A8$00F3MOVWFSTACK_2+1

$01A9$01F2CLRFSTACK_2

$01AA$0872MOVFSTACK_2, 0

$01AB$1683BSFSTATUS, RP0

$01AC$00C3MOVWF_adc_read_local_result

$01AD$0873MOVFSTACK_2+1, 0

$01AE$00C4MOVWF_adc_read_local_result+1

;adclib_a_c.ppas,25 ::

$01AF$081EMOVFADRESL, 0

$01B0$0472IORWFSTACK_2, 0

$01B1$00C3MOVWF_adc_read_local_result

$01B2$0873MOVFSTACK_2+1, 0

$01B3$00C4MOVWF_adc_read_local_result+1

$01B4$3000MOVLW0

$01B5$04C4IORWF_adc_read_local_result+1, 1

;adclib_a_c.ppas,26 ::

$01B6$1283BCFSTATUS, RP0

$01B7$101FBCFADCON0, 0

$01B8$adclib_a_c_L_0:

$01B8$1683BSFSTATUS, RP0

$01B9$0843MOVF_adc_read_local_result, 0

$01BA$00F0MOVWFSTACK_0

$01BB$0844MOVF_adc_read_local_result+1, 0

$01BC$00F1MOVWFSTACK_0+1

;adclib_a_c.ppas,27 ::

$01BD$0008RETURN

$01BE$_wordtostr:

;conv.ppas,30 ::

;conv.ppas,32 ::

$01BE$3001MOVLW1

$01BF$1303BCFSTATUS, RP1

$01C0$1683BSFSTATUS, RP0

$01C1$00C5MOVWF_wordtostr_local_len

;conv.ppas,33 ::

$01C2$0843MOVFFARG_WordToStr+1, 0

$01C3$3C00SUBLW0

$01C4$1D03BTFSSSTATUS, Z

$01C5$29C8GOTOL_WordToStr_0

$01C6$0842MOVFFARG_WordToStr, 0

$01C7$3C09SUBLW9

$01C8$L_WordToStr_0:

$01C8$1803BTFSCSTATUS, C

$01C9$29CBGOTOconv_L_15

$01CA$conv_L_14:

;conv.ppas,34 ::

$01CA$0AC5INCF_wordtostr_local_len, 1

$01CB$conv_L_15:

$01CB$conv_L_16:

;conv.ppas,35 ::

$01CB$0843MOVFFARG_WordToStr+1, 0

$01CC$3C00SUBLW0

$01CD$1D03BTFSSSTATUS, Z

$01CE$29D1GOTOL_WordToStr_1

$01CF$0842MOVFFARG_WordToStr, 0

$01D0$3C63SUBLW99

$01D1$L_WordToStr_1:

$01D1$1803BTFSCSTATUS, C

$01D2$29D4GOTOconv_L_18

$01D3$conv_L_17:

;conv.ppas,36 ::

$01D3$0AC5INCF_wordtostr_local_len, 1

$01D4$conv_L_18:

$01D4$conv_L_19:

;conv.ppas,37 ::

$01D4$0843MOVFFARG_WordToStr+1, 0

$01D5$3C03SUBLW3

$01D6$1D03BTFSSSTATUS, Z

$01D7$29DAGOTOL_WordToStr_2

$01D8$0842MOVFFARG_WordToStr, 0

$01D9$3CE7SUBLW231

$01DA$L_WordToStr_2:

$01DA$1803BTFSCSTATUS, C

$01DB$29DDGOTOconv_L_21

$01DC$conv_L_20:

;conv.ppas,38 ::

$01DC$0AC5INCF_wordtostr_local_len, 1

$01DD$conv_L_21:

$01DD$conv_L_22:

;conv.ppas,39 ::

$01DD$0843MOVFFARG_WordToStr+1, 0

$01DE$3C27SUBLW39

$01DF$1D03BTFSSSTATUS, Z

$01E0$29E3GOTOL_WordToStr_3

$01E1$0842MOVFFARG_WordToStr, 0

$01E2$3C0FSUBLW15

$01E3$L_WordToStr_3:

$01E3$1803BTFSCSTATUS, C

$01E4$29E6GOTOconv_L_24

$01E5$conv_L_23:

;conv.ppas,40 ::

$01E5$0AC5INCF_wordtostr_local_len, 1

$01E6$conv_L_24:

$01E6$conv_L_25:

;conv.ppas,41 ::

$01E6$0844MOVFFARG_WordToStr+2, 0

$01E7$0084MOVWFFSR

$01E8$3020MOVLW32

$01E9$0080MOVWFINDF

$01EA$0A84INCFFSR, 1

$01EB$0080MOVWFINDF

$01EC$0A84INCFFSR, 1

$01ED$0080MOVWFINDF

$01EE$0A84INCFFSR, 1

$01EF$0080MOVWFINDF

$01F0$0A84INCFFSR, 1

$01F1$0080MOVWFINDF

$01F2$0A84INCFFSR, 1

$01F3$0180CLRFINDF

;conv.ppas,42 ::

$01F4$0384DECFFSR, 1

;conv.ppas,43 ::

$01F5$conv_L_28:

$01F5$0845MOVF_wordtostr_local_len, 0

$01F6$3C00SUBLW0

$01F7$1803BTFSCSTATUS, C

$01F8$2A19GOTOconv_L_29

;conv.ppas,45 ::

$01F9$300AMOVLW10

$01FA$00F4MOVWFSTACK_4

$01FB$01F5CLRFSTACK_4+1

$01FC$0842MOVFFARG_WordToStr, 0

$01FD$00F0MOVWFSTACK_0

$01FE$0843MOVFFARG_WordToStr+1, 0

$01FF$00F1MOVWFSTACK_0+1

$0200$2117CALL_div_16x16_u

$0201$0878MOVFSTACK_8, 0

$0202$00F0MOVWFSTACK_0

$0203$0879MOVFSTACK_9, 0

$0204$00F1MOVWFSTACK_1

$0205$3030MOVLW48

$0206$0770ADDWFSTACK_0, 0

$0207$0080MOVWFINDF

;conv.ppas,46 ::

;conv.ppas,47 ::

$0208$0384DECFFSR, 1

;conv.ppas,48 ::

$0209$300AMOVLW10

$020A$00F4MOVWFSTACK_4

$020B$01F5CLRFSTACK_4+1

$020C$1683BSFSTATUS, RP0

$020D$0842MOVFFARG_WordToStr, 0

$020E$00F0MOVWFSTACK_0

$020F$0843MOVFFARG_WordToStr+1, 0

$0210$00F1MOVWFSTACK_0+1

$0211$2117CALL_div_16x16_u

$0212$0870MOVFSTACK_0, 0

$0213$1683BSFSTATUS, RP0

$0214$00C2MOVWFFARG_WordToStr

$0215$0871MOVFSTACK_0+1, 0

$0216$00C3MOVWFFARG_WordToStr+1

;conv.ppas,49 ::

$0217$03C5DECF_wordtostr_local_len, 1

;conv.ppas,50 ::

$0218$29F5GOTOconv_L_28

$0219$conv_L_29:

$0219$conv_L_13:

;conv.ppas,51 ::

$0219$0008RETURN

$021A$_mul_16x16_u:

$021A$1303BCFSTATUS, RP1

$021B$1283BCFSTATUS, RP0

;math.ppas,41 ::

;math.ppas,44 ::

$021C$01FBCLRFSTACK_11

;math.ppas,45 ::

$021D$01FACLRFSTACK_10

;math.ppas,46 ::

$021E$01F9CLRFSTACK_9

;math.ppas,47 ::

$021F$3080MOVLW128

;math.ppas,48 ::

$0220$00F8MOVWFSTACK_8

;math.ppas,49 ::

$0221$0CF1RRFSTACK_1, F

;math.ppas,50 ::

$0222$0CF0RRFSTACK_0, F

;math.ppas,51 ::

$0223$1C03BTFSSSTATUS, C

;math.ppas,52 ::

$0224$2A2EGOTO$+10

;math.ppas,53 ::

$0225$0874MOVFSTACK_4, W

;math.ppas,54 ::

$0226$07F9ADDWFSTACK_9, F

;math.ppas,55 ::

$0227$0875MOVFSTACK_5, W

;math.ppas,56 ::

$0228$1803BTFSCSTATUS, C

;math.ppas,57 ::

$0229$0F75INCFSZSTACK_5, W

;math.ppas,58 ::

$022A$07FAADDWFSTACK_10, F

;math.ppas,59 ::

$022B$1803BTFSCSTATUS, C

;math.ppas,60 ::

$022C$0AFBINCFSTACK_11, F

;math.ppas,61 ::

$022D$1003BCFSTATUS, C

;math.ppas,62 ::

$022E$1FF0BTFSSSTACK_0, 7

;math.ppas,63 ::

$022F$2A36GOTO$+7

;math.ppas,64 ::

$0230$0874MOVFSTACK_4, W

;math.ppas,65 ::

$0231$07FAADDWFSTACK_10, F

;math.ppas,66 ::

$0232$0875MOVFSTACK_5, W

;math.ppas,67 ::

$0233$1803BTFSCSTATUS, C

;math.ppas,68 ::

$0234$0F75INCFSZSTACK_5, W

;math.ppas,69 ::

$0235$07FBADDWFSTACK_11, F

;math.ppas,70 ::

$0236$0CFBRRFSTACK_11, F

;math.ppas,71 ::

$0237$0CFARRFSTACK_10, F

;math.ppas,72 ::

$0238$0CF9RRFSTACK_9, F

;math.ppas,73 ::

$0239$0CF8RRFSTACK_8, F

;math.ppas,74 ::

$023A$1C03BTFSSSTATUS, C

;math.ppas,75 ::

$023B$2A21GOTO$-26

;math.ppas,76 ::

$023C$087BMOVFSTACK_11, W

;math.ppas,77 ::

$023D$00F3MOVWFSTACK_3

;math.ppas,78 ::

$023E$087AMOVFSTACK_10, W

;math.ppas,79 ::

$023F$00F2MOVWFSTACK_2

;math.ppas,80 ::

$0240$0879MOVFSTACK_9, W

;math.ppas,81 ::

$0241$00F1MOVWFSTACK_1

;math.ppas,82 ::

$0242$0878MOVFSTACK_8, W

;math.ppas,83 ::

$0243$00F0MOVWFSTACK_0

;math.ppas,84 ::

$0244$math_L_1:

;math.ppas,85 ::

$0244$0008RETURN

$0245$_lcd8_init:

;__lib_lcd8custom.ppas,125 ::

;__lib_lcd8custom.ppas,127 ::

$0245$2007CALL_delay_5500us

;__lib_lcd8custom.ppas,128 ::

$0246$2007CALL_delay_5500us

;__lib_lcd8custom.ppas,129 ::

$0247$2007CALL_delay_5500us

;__lib_lcd8custom.ppas,131 ::

$0248$1683BSFSTATUS, RP0

$0249$0832MOVFFARG_Lcd8_Init+1, 0

$024A$00F0MOVWFSTACK_0

$024B$3001MOVLW1

$024C$1283BCFSTATUS, RP0

$024D$00A2MOVWF__lib_lcd8custom___lcd8_db7

$024E$0870MOVFSTACK_0, 0

$024F$L_Lcd8_Init_0:

$024F$1903BTFSCSTATUS, Z

$0250$2A55GOTOL_Lcd8_Init_1

$0251$0DA2RLF__lib_lcd8custom___lcd8_db7, 1

$0252$1022BCF__lib_lcd8custom___lcd8_db7, 0

$0253$3FFFADDLW255

$0254$2A4FGOTOL_Lcd8_Init_0

$0255$L_Lcd8_Init_1:

;__lib_lcd8custom.ppas,132 ::

$0255$1683BSFSTATUS, RP0

$0256$0833MOVFFARG_Lcd8_Init+2, 0

$0257$00F0MOVWFSTACK_0

$0258$3001MOVLW1

$0259$1283BCFSTATUS, RP0

$025A$00A3MOVWF__lib_lcd8custom___lcd8_db6

$025B$0870MOVFSTACK_0, 0

$025C$L_Lcd8_Init_2:

$025C$1903BTFSCSTATUS, Z

$025D$2A62GOTOL_Lcd8_Init_3

$025E$0DA3RLF__lib_lcd8custom___lcd8_db6, 1

$025F$1023BCF__lib_lcd8custom___lcd8_db6, 0

$0260$3FFFADDLW255

$0261$2A5CGOTOL_Lcd8_Init_2

$0262$L_Lcd8_Init_3:

;__lib_lcd8custom.ppas,133 ::

$0262$1683BSFSTATUS, RP0

$0263$0834MOVFFARG_Lcd8_Init+3, 0

$0264$00F0MOVWFSTACK_0

$0265$3001MOVLW1

$0266$1283BCFSTATUS, RP0

$0267$00A4MOVWF__lib_lcd8custom___lcd8_db5

$0268$0870MOVFSTACK_0, 0

$0269$L_Lcd8_Init_4:

$0269$1903BTFSCSTATUS, Z

$026A$2A6FGOTOL_Lcd8_Init_5

$026B$0DA4RLF__lib_lcd8custom___lcd8_db5, 1

$026C$1024BCF__lib_lcd8custom___lcd8_db5, 0

$026D$3FFFADDLW255

$026E$2A69GOTOL_Lcd8_Init_4

$026F$L_Lcd8_Init_5:

;__lib_lcd8custom.ppas,134 ::

$026F$1683BSFSTATUS, RP0

$0270$0835MOVFFARG_Lcd8_Init+4, 0

$0271$00F0MOVWFSTACK_0

$0272$3001MOVLW1

$0273$1283BCFSTATUS, RP0

$0274$00A5MOVWF__lib_lcd8custom___lcd8_db4

$0275$0870MOVFSTACK_0, 0

$0276$L_Lcd8_Init_6:

$0276$1903BTFSCSTATUS, Z

$0277$2A7CGOTOL_Lcd8_Init_7

$0278$0DA5RLF__lib_lcd8custom___lcd8_db4, 1

$0279$1025BCF__lib_lcd8custom___lcd8_db4, 0

$027A$3FFFADDLW255

$027B$2A76GOTOL_Lcd8_Init_6

$027C$L_Lcd8_Init_7:

;__lib_lcd8custom.ppas,135 ::

$027C$1683BSFSTATUS, RP0

$027D$0836MOVFFARG_Lcd8_Init+5, 0

$027E$00F0MOVWFSTACK_0

$027F$3001MOVLW1

$0280$1283BCFSTATUS, RP0

$0281$00A6MOVWF__lib_lcd8custom___lcd8_db3

$0282$0870MOVFSTACK_0, 0

$0283$L_Lcd8_Init_8:

$0283$1903BTFSCSTATUS, Z

$0284$2A89GOTOL_Lcd8_Init_9

$0285$0DA6RLF__lib_lcd8custom___lcd8_db3, 1

$0286$1026BCF__lib_lcd8custom___lcd8_db3, 0

$0287$3FFFADDLW255

$0288$2A83GOTOL_Lcd8_Init_8

$0289$L_Lcd8_Init_9:

;__lib_lcd8custom.ppas,136 ::

$0289$1683BSFSTATUS, RP0

$028A$0837MOVFFARG_Lcd8_Init+6, 0

$028B$00F0MOVWFSTACK_0

$028C$3001MOVLW1

$028D$1283BCFSTATUS, RP0

$028E$00A7MOVWF__lib_lcd8custom___lcd8_db2

$028F$0870MOVFSTACK_0, 0

$0290$L_Lcd8_Init_10:

$0290$1903BTFSCSTATUS, Z

$0291$2A96GOTOL_Lcd8_Init_11

$0292$0DA7RLF__lib_lcd8custom___lcd8_db2, 1

$0293$1027BCF__lib_lcd8custom___lcd8_db2, 0

$0294$3FFFADDLW255

$0295$2A90GOTOL_Lcd8_Init_10

$0296$L_Lcd8_Init_11:

;__lib_lcd8custom.ppas,137 ::

$0296$1683BSFSTATUS, RP0

$0297$0838MOVFFARG_Lcd8_Init+7, 0

$0298$00F0MOVWFSTACK_0

$0299$3001MOVLW1

$029A$1283BCFSTATUS, RP0

$029B$00A8MOVWF__lib_lcd8custom___lcd8_db1

$029C$0870MOVFSTACK_0, 0

$029D$L_Lcd8_Init_12:

$029D$1903BTFSCSTATUS, Z

$029E$2AA3GOTOL_Lcd8_Init_13

$029F$0DA8RLF__lib_lcd8custom___lcd8_db1, 1

$02A0$1028BCF__lib_lcd8custom___lcd8_db1, 0

$02A1$3FFFADDLW255

$02A2$2A9DGOTOL_Lcd8_Init_12

$02A3$L_Lcd8_Init_13:

;__lib_lcd8custom.ppas,138 ::

$02A3$1683BSFSTATUS, RP0

$02A4$0839MOVFFARG_Lcd8_Init+8, 0

$02A5$00F0MOVWFSTACK_0

$02A6$3001MOVLW1

$02A7$1283BCFSTATUS, RP0

$02A8$00A9MOVWF__lib_lcd8custom___lcd8_db0

$02A9$0870MOVFSTACK_0, 0

$02AA$L_Lcd8_Init_14:

$02AA$1903BTFSCSTATUS, Z

$02AB$2AB0GOTOL_Lcd8_Init_15

$02AC$0DA9RLF__lib_lcd8custom___lcd8_db0, 1

$02AD$1029BCF__lib_lcd8custom___lcd8_db0, 0

$02AE$3FFFADDLW255

$02AF$2AAAGOTOL_Lcd8_Init_14

$02B0$L_Lcd8_Init_15:

;__lib_lcd8custom.ppas,139 ::

$02B0$1683BSFSTATUS, RP0

$02B1$083BMOVFFARG_Lcd8_Init+10, 0

$02B2$00F0MOVWFSTACK_0

$02B3$3001MOVLW1

$02B4$1283BCFSTATUS, RP0

$02B5$00ACMOVWF__lib_lcd8custom___lcd8_rs

$02B6$0870MOVFSTACK_0, 0

$02B7$L_Lcd8_Init_16:

$02B7$1903BTFSCSTATUS, Z

$02B8$2ABDGOTOL_Lcd8_Init_17

$02B9$0DACRLF__lib_lcd8custom___lcd8_rs, 1

$02BA$102CBCF__lib_lcd8custom___lcd8_rs, 0

$02BB$3FFFADDLW255

$02BC$2AB7GOTOL_Lcd8_Init_16

$02BD$L_Lcd8_Init_17:

;__lib_lcd8custom.ppas,140 ::

$02BD$1683BSFSTATUS, RP0

$02BE$083CMOVFFARG_Lcd8_Init+11, 0

$02BF$00F0MOVWFSTACK_0

$02C0$3001MOVLW1

$02C1$1283BCFSTATUS, RP0

$02C2$00AEMOVWF__lib_lcd8custom___lcd8_rw

$02C3$0870MOVFSTACK_0, 0

$02C4$L_Lcd8_Init_18:

$02C4$1903BTFSCSTATUS, Z

$02C5$2ACAGOTOL_Lcd8_Init_19

$02C6$0DAERLF__lib_lcd8custom___lcd8_rw, 1

$02C7$102EBCF__lib_lcd8custom___lcd8_rw, 0

$02C8$3FFFADDLW255

$02C9$2AC4GOTOL_Lcd8_Init_18

$02CA$L_Lcd8_Init_19:

;__lib_lcd8custom.ppas,141 ::

$02CA$1683BSFSTATUS, RP0

$02CB$083DMOVFFARG_Lcd8_Init+12, 0

$02CC$00F0MOVWFSTACK_0

$02CD$3001MOVLW1

$02CE$1283BCFSTATUS, RP0

$02CF$00ADMOVWF__lib_lcd8custom___lcd8_enable

$02D0$0870MOVFSTACK_0, 0

$02D1$L_Lcd8_Init_20:

$02D1$1903BTFSCSTATUS, Z

$02D2$2AD7GOTOL_Lcd8_Init_21

$02D3$0DADRLF__lib_lcd8custom___lcd8_enable, 1

$02D4$102DBCF__lib_lcd8custom___lcd8_enable, 0

$02D5$3FFFADDLW255

$02D6$2AD1GOTOL_Lcd8_Init_20

$02D7$L_Lcd8_Init_21:

;__lib_lcd8custom.ppas,143 ::

$02D7$1683BSFSTATUS, RP0

$02D8$0831MOVFFARG_Lcd8_Init, 0

$02D9$1283BCFSTATUS, RP0

$02DA$00A0MOVWF__lib_lcd8custom__lat_dataaddress

;__lib_lcd8custom.ppas,144 ::

$02DB$1683BSFSTATUS, RP0

$02DC$0831MOVFFARG_Lcd8_Init, 0

$02DD$1283BCFSTATUS, RP0

$02DE$00A1MOVWF__lib_lcd8custom__port_dataaddress

;__lib_lcd8custom.ppas,145 ::

$02DF$1683BSFSTATUS, RP0

$02E0$083AMOVFFARG_Lcd8_Init+9, 0

$02E1$1283BCFSTATUS, RP0

$02E2$00ABMOVWF__lib_lcd8custom__ctrladdress

;__lib_lcd8custom.ppas,147 ::

$02E3$1683BSFSTATUS, RP0

$02E4$0831MOVFFARG_Lcd8_Init, 0

$02E5$0084MOVWFFSR

$02E6$0180CLRFINDF, 1

;__lib_lcd8custom.ppas,148 ::

$02E7$3080MOVLW128

$02E8$0431IORWFFARG_Lcd8_Init, 0

$02E9$00F0MOVWFSTACK_0

$02EA$0870MOVFSTACK_0, 0

$02EB$1283BCFSTATUS, RP0

$02EC$00A0MOVWF__lib_lcd8custom__lat_dataaddress

;__lib_lcd8custom.ppas,149 ::

$02ED$0870MOVFSTACK_0, 0

$02EE$0084MOVWFFSR

$02EF$0180CLRFINDF, 1

;__lib_lcd8custom.ppas,150 ::

$02F0$1683BSFSTATUS, RP0

$02F1$0831MOVFFARG_Lcd8_Init, 0

$02F2$1283BCFSTATUS, RP0

$02F3$00A0MOVWF__lib_lcd8custom__lat_dataaddress

;__lib_lcd8custom.ppas,152 ::

$02F4$082BMOVF__lib_lcd8custom__ctrladdress, 0

$02F5$0084MOVWFFSR

$02F6$0800MOVFINDF, 0

$02F7$00F1MOVWFSTACK_1

$02F8$082DMOVF__lib_lcd8custom___lcd8_enable, 0

$02F9$042CIORWF__lib_lcd8custom___lcd8_rs, 0

$02FA$00F0MOVWFSTACK_0

$02FB$082EMOVF__lib_lcd8custom___lcd8_rw, 0

$02FC$04F0IORWFSTACK_0, 1

$02FD$09F0COMFSTACK_0, F

$02FE$0871MOVFSTACK_1, 0

$02FF$05F0ANDWFSTACK_0, 1

$0300$082BMOVF__lib_lcd8custom__ctrladdress, 0

$0301$0084MOVWFFSR

$0302$0870MOVFSTACK_0, 0

$0303$0080MOVWFINDF

;__lib_lcd8custom.ppas,153 ::

$0304$3080MOVLW128

$0305$042BIORWF__lib_lcd8custom__ctrladdress, 0

$0306$00F2MOVWFSTACK_2

$0307$0872MOVFSTACK_2, 0

$0308$00ABMOVWF__lib_lcd8custom__ctrladdress

;__lib_lcd8custom.ppas,154 ::

$0309$0872MOVFSTACK_2, 0

$030A$0084MOVWFFSR

$030B$0800MOVFINDF, 0

$030C$00F1MOVWFSTACK_1

$030D$082DMOVF__lib_lcd8custom___lcd8_enable, 0

$030E$042CIORWF__lib_lcd8custom___lcd8_rs, 0

$030F$00F0MOVWFSTACK_0

$0310$082EMOVF__lib_lcd8custom___lcd8_rw, 0

$0311$04F0IORWFSTACK_0, 1

$0312$09F0COMFSTACK_0, F

$0313$0871MOVFSTACK_1, 0

$0314$05F0ANDWFSTACK_0, 1

$0315$0872MOVFSTACK_2, 0

$0316$0084MOVWFFSR

$0317$0870MOVFSTACK_0, 0

$0318$0080MOVWFINDF

;__lib_lcd8custom.ppas,155 ::

$0319$3080MOVLW128

$031A$06ABXORWF__lib_lcd8custom__ctrladdress, 1

;__lib_lcd8custom.ppas,157 ::

$031B$3030MOVLW48

$031C$1683BSFSTATUS, RP0

$031D$00C6MOVWFFARG_Lcd8_Cmd

$031E$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,158 ::

$031F$3030MOVLW48

$0320$1683BSFSTATUS, RP0

$0321$00C6MOVWFFARG_Lcd8_Cmd

$0322$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,159 ::

$0323$3030MOVLW48

$0324$1683BSFSTATUS, RP0

$0325$00C6MOVWFFARG_Lcd8_Cmd

$0326$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,160 ::

$0327$3038MOVLW56

$0328$1683BSFSTATUS, RP0

$0329$00C6MOVWFFARG_Lcd8_Cmd

$032A$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,161 ::

$032B$3008MOVLW8

$032C$1683BSFSTATUS, RP0

$032D$00C6MOVWFFARG_Lcd8_Cmd

$032E$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,162 ::

$032F$3001MOVLW1

$0330$1683BSFSTATUS, RP0

$0331$00C6MOVWFFARG_Lcd8_Cmd

$0332$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,163 ::

$0333$3006MOVLW6

$0334$1683BSFSTATUS, RP0

$0335$00C6MOVWFFARG_Lcd8_Cmd

$0336$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,164 ::

$0337$300CMOVLW12

$0338$1683BSFSTATUS, RP0

$0339$00C6MOVWFFARG_Lcd8_Cmd

$033A$2020CALL_lcd8_cmd

;__lib_lcd8custom.ppas,165 ::

$033B$3001MOVLW1

$033C$00AAMOVWF__lib_lcd8custom__cmd

$033D$__lib_lcd8custom_L_46:

;__lib_lcd8custom.ppas,166 ::

$033D$0008RETURN

$033E$_welcome:

;mechprothese.pbas,59 :: sub procedure welcome 'write welcome text to LCD

;mechprothese.pbas,62 :: Lcd8_out(1,1,"*** welcome! ***")

$033E$3001MOVLW1

$033F$1303BCFSTATUS, RP1

$0340$1683BSFSTATUS, RP0

$0341$00C2MOVWFFARG_Lcd8_Out

$0342$3001MOVLW1

$0343$00C3MOVWFFARG_Lcd8_Out+1

$0344$302AMOVLW42

$0345$00B1MOVWF?welcome_Local_Text+0

$0346$302AMOVLW42

$0347$00B2MOVWF?welcome_Local_Text+1

$0348$302AMOVLW42

$0349$00B3MOVWF?welcome_Local_Text+2

$034A$3020MOVLW32

$034B$00B4MOVWF?welcome_Local_Text+3

$034C$3077MOVLW119

$034D$00B5MOVWF?welcome_Local_Text+4

$034E$3065MOVLW101

$034F$00B6MOVWF?welcome_Local_Text+5

$0350$306CMOVLW108

$0351$00B7MOVWF?welcome_Local_Text+6

$0352$3063MOVLW99

$0353$00B8MOVWF?welcome_Local_Text+7

$0354$306FMOVLW111

$0355$00B9MOVWF?welcome_Local_Text+8

$0356$306DMOVLW109

$0357$00BAMOVWF?welcome_Local_Text+9

$0358$3065MOVLW101

$0359$00BBMOVWF?welcome_Local_Text+10

$035A$3021MOVLW33

$035B$00BCMOVWF?welcome_Local_Text+11

$035C$3020MOVLW32

$035D$00BDMOVWF?welcome_Local_Text+12

$035E$302AMOVLW42

$035F$00BEMOVWF?welcome_Local_Text+13

$0360$302AMOVLW42

$0361$00BFMOVWF?welcome_Local_Text+14

$0362$302AMOVLW42

$0363$00C0MOVWF?welcome_Local_Text+15

$0364$01C1CLRF?welcome_Local_Text+16

$0365$30B1MOVLW?welcome_Local_Text

$0366$00C4MOVWFFARG_Lcd8_Out+2

$0367$2134CALL_lcd8_out

;mechprothese.pbas,63 :: Lcd8_out(2,1," BEENPROTHESE ")

$0368$3002MOVLW2

$0369$1683BSFSTATUS, RP0

$036A$00C2MOVWFFARG_Lcd8_Out

$036B$3001MOVLW1

$036C$00C3MOVWFFARG_Lcd8_Out+1

$036D$3020MOVLW32

$036E$00B1MOVWF?welcome_Local_Text+0

$036F$3020MOVLW32

$0370$00B2MOVWF?welcome_Local_Text+1

$0371$3042MOVLW66

$0372$00B3MOVWF?welcome_Local_Text+2

$0373$3045MOVLW69

$0374$00B4MOVWF?welcome_Local_Text+3

$0375$3045MOVLW69

$0376$00B5MOVWF?welcome_Local_Text+4

$0377$304EMOVLW78

$0378$00B6MOVWF?welcome_Local_Text+5

$0379$3050MOVLW80

$037A$00B7MOVWF?welcome_Local_Text+6

$037B$3052MOVLW82

$037C$00B8MOVWF?welcome_Local_Text+7

$037D$304FMOVLW79

$037E$00B9MOVWF?welcome_Local_Text+8

$037F$3054MOVLW84

$0380$00BAMOVWF?welcome_Local_Text+9

$0381$3048MOVLW72

$0382$00BBMOVWF?welcome_Local_Text+10

$0383$3045MOVLW69

$0384$00BCMOVWF?welcome_Local_Text+11

$0385$3053MOVLW83

$0386$00BDMOVWF?welcome_Local_Text+12

$0387$3045MOVLW69

$0388$00BEMOVWF?welcome_Local_Text+13

$0389$3020MOVLW32

$038A$00BFMOVWF?welcome_Local_Text+14

$038B$3020MOVLW32

$038C$00C0MOVWF?welcome_Local_Text+15

$038D$01C1CLRF?welcome_Local_Text+16

$038E$30B1MOVLW?welcome_Local_Text

$038F$00C4MOVWFFARG_Lcd8_Out+2

$0390$2134CALL_lcd8_out

;mechprothese.pbas,64 :: Lcd8_out(3,-3,"Arman & Max 2007")

$0391$3003MOVLW3

$0392$1683BSFSTATUS, RP0

$0393$00C2MOVWFFARG_Lcd8_Out

$0394$30FDMOVLW253

$0395$00C3MOVWFFARG_Lcd8_Out+1

$0396$3041MOVLW65

$0397$00B1MOVWF?welcome_Local_Text+0

$0398$3072MOVLW114

$0399$00B2MOVWF?welcome_Local_Text+1

$039A$306DMOVLW109

$039B$00B3MOVWF?welcome_Local_Text+2

$039C$3061MOVLW97

$039D$00B4MOVWF?welcome_Local_Text+3

$039E$306EMOVLW110

$039F$00B5MOVWF?welcome_Local_Text+4

$03A0$3020MOVLW32

$03A1$00B6MOVWF?welcome_Local_Text+5

$03A2$3026MOVLW38

$03A3$00B7MOVWF?welcome_Local_Text+6

$03A4$3020MOVLW32

$03A5$00B8MOVWF?welcome_Local_Text+7

$03A6$304DMOVLW77

$03A7$00B9MOVWF?welcome_Local_Text+8

$03A8$3061MOVLW97

$03A9$00BAMOVWF?welcome_Local_Text+9

$03AA$3078MOVLW120

$03AB$00BBMOVWF?welcome_Local_Text+10

$03AC$3020MOVLW32

$03AD$00BCMOVWF?welcome_Local_Text+11

$03AE$3032MOVLW50

$03AF$00BDMOVWF?welcome_Local_Text+12

$03B0$3030MOVLW48

$03B1$00BEMOVWF?welcome_Local_Text+13

$03B2$3030MOVLW48

$03B3$00BFMOVWF?welcome_Local_Text+14

$03B4$3037MOVLW55

$03B5$00C0MOVWF?welcome_Local_Text+15

$03B6$01C1CLRF?welcome_Local_Text+16

$03B7$30B1MOVLW?welcome_Local_Text

$03B8$00C4MOVWFFARG_Lcd8_Out+2

$03B9$2134CALL_lcd8_out

;mechprothese.pbas,65 :: Lcd8_out(4,-3,"INITALISING .")

$03BA$3004MOVLW4

$03BB$1683BSFSTATUS, RP0

$03BC$00C2MOVWFFARG_Lcd8_Out

$03BD$30FDMOVLW253

$03BE$00C3MOVWFFARG_Lcd8_Out+1

$03BF$3049MOVLW73

$03C0$00B1MOVWF?welcome_Local_Text+0

$03C1$304EMOVLW78

$03C2$00B2MOVWF?welcome_Local_Text+1

$03C3$3049MOVLW73

$03C4$00B3MOVWF?welcome_Local_Text+2

$03C5$3054MOVLW84

$03C6$00B4MOVWF?welcome_Local_Text+3

$03C7$3041MOVLW65

$03C8$00B5MOVWF?welcome_Local_Text+4

$03C9$304CMOVLW76

$03CA$00B6MOVWF?welcome_Local_Text+5

$03CB$3049MOVLW73

$03CC$00B7MOVWF?welcome_Local_Text+6

$03CD$3053MOVLW83

$03CE$00B8MOVWF?welcome_Local_Text+7

$03CF$3049MOVLW73

$03D0$00B9MOVWF?welcome_Local_Text+8

$03D1$304EMOVLW78

$03D2$00BAMOVWF?welcome_Local_Text+9

$03D3$3047MOVLW71

$03D4$00BBMOVWF?welcome_Local_Text+10

$03D5$3020MOVLW32

$03D6$00BCMOVWF?welcome_Local_Text+11

$03D7$302EMOVLW46

$03D8$00BDMOVWF?welcome_Local_Text+12

$03D9$01BECLRF?welcome_Local_Text+13

$03DA$30B1MOVLW?welcome_Local_Text

$03DB$00C4MOVWFFARG_Lcd8_Out+2

$03DC$2134CALL_lcd8_out

;mechprothese.pbas,66 :: Delay_ms(1000)

$03DD$300BMOVLW11

$03DE$00FCMOVWFSTACK_12

$03DF$30FFMOVLW255

$03E0$00FBMOVWFSTACK_11

$03E1$30FFMOVLW255

$03E2$00FAMOVWFSTACK_10

$03E3$0BFCDECFSZSTACK_12, F

$03E4$2BE6GOTO$+2

$03E5$2BEDGOTO$+8

$03E6$0BFBDECFSZSTACK_11, F

$03E7$2BE9GOTO$+2

$03E8$2BECGOTO$+4

$03E9$0BFADECFSZSTACK_10, F

$03EA$2BE9GOTO$-1

$03EB$2BE6GOTO$-5

$03EC$2BE3GOTO$-9

$03ED$3033MOVLW51

$03EE$00FBMOVWFSTACK_11

$03EF$30FFMOVLW255

$03F0$00FAMOVWFSTACK_10

$03F1$0BFBDECFSZSTACK_11, F

$03F2$2BF4GOTO$+2

$03F3$2BF7GOTO$+4

$03F4$0BFADECFSZSTACK_10, F

$03F5$2BF4GOTO$-1

$03F6$2BF1GOTO$-5

$03F7$3088MOVLW136

$03F8$00FAMOVWFSTACK_10

$03F9$0BFADECFSZSTACK_10, F

$03FA$2BF9GOTO$-1

$03FB$0000NOP

$03FC$0000NOP

;mechprothese.pbas,67 :: Lcd8_out(4,-3,"INITALISING ..")

$03FD$3004MOVLW4

$03FE$1683BSFSTATUS, RP0

$03FF$00C2MOVWFFARG_Lcd8_Out

$0400$30FDMOVLW253

$0401$00C3MOVWFFARG_Lcd8_Out+1

$0402$3049MOVLW73

$0403$00B1MOVWF?welcome_Local_Text+0

$0404$304EMOVLW78

$0405$00B2MOVWF?welcome_Local_Text+1

$0406$3049MOVLW73

$0407$00B3MOVWF?welcome_Local_Text+2

$0408$3054MOVLW84

$0409$00B4MOVWF?welcome_Local_Text+3

$040A$3041MOVLW65

$040B$00B5MOVWF?welcome_Local_Text+4

$040C$304CMOVLW76

$040D$00B6MOVWF?welcome_Local_Text+5

$040E$3049MOVLW73

$040F$00B7MOVWF?welcome_Local_Text+6

$0410$3053MOVLW83

$0411$00B8MOVWF?welcome_Local_Text+7

$0412$3049MOVLW73

$0413$00B9MOVWF?welcome_Local_Text+8

$0414$304EMOVLW78

$0415$00BAMOVWF?welcome_Local_Text+9

$0416$3047MOVLW71

$0417$00BBMOVWF?welcome_Local_Text+10

$0418$3020MOVLW32

$0419$00BCMOVWF?welcome_Local_Text+11

$041A$302EMOVLW46

$041B$00BDMOVWF?welcome_Local_Text+12

$041C$302EMOVLW46

$041D$00BEMOVWF?welcome_Local_Text+13

$041E$01BFCLRF?welcome_Local_Text+14

$041F$30B1MOVLW?welcome_Local_Text

$0420$00C4MOVWFFARG_Lcd8_Out+2

$0421$2134CALL_lcd8_out

;mechprothese.pbas,68 :: Delay_ms(1000)

$0422$300BMOVLW11

$0423$00FCMOVWFSTACK_12

$0424$30FFMOVLW255

$0425$00FBMOVWFSTACK_11

$0426$30FFMOVLW255

$0427$00FAMOVWFSTACK_10

$0428$0BFCDECFSZSTACK_12, F

$0429$2C2BGOTO$+2

$042A$2C32GOTO$+8

$042B$0BFBDECFSZSTACK_11, F

$042C$2C2EGOTO$+2

$042D$2C31GOTO$+4

$042E$0BFADECFSZSTACK_10, F

$042F$2C2EGOTO$-1

$0430$2C2BGOTO$-5

$0431$2C28GOTO$-9

$0432$3033MOVLW51

$0433$00FBMOVWFSTACK_11

$0434$30FFMOVLW255

$0435$00FAMOVWFSTACK_10

$0436$0BFBDECFSZSTACK_11, F

$0437$2C39GOTO$+2

$0438$2C3CGOTO$+4

$0439$0BFADECFSZSTACK_10, F

$043A$2C39GOTO$-1

$043B$2C36GOTO$-5

$043C$3088MOVLW136

$043D$00FAMOVWFSTACK_10

$043E$0BFADECFSZSTACK_10, F

$043F$2C3EGOTO$-1

$0440$0000NOP

$0441$0000NOP

;mechprothese.pbas,69 :: Lcd8_out(4,-3,"INITALISING ...")

$0442$3004MOVLW4

$0443$1683BSFSTATUS, RP0

$0444$00C2MOVWFFARG_Lcd8_Out

$0445$30FDMOVLW253

$0446$00C3MOVWFFARG_Lcd8_Out+1

$0447$3049MOVLW73

$0448$00B1MOVWF?welcome_Local_Text+0

$0449$304EMOVLW78

$044A$00B2MOVWF?welcome_Local_Text+1

$044B$3049MOVLW73

$044C$00B3MOVWF?welcome_Local_Text+2

$044D$3054MOVLW84

$044E$00B4MOVWF?welcome_Local_Text+3

$044F$3041MOVLW65

$0450$00B5MOVWF?welcome_Local_Text+4

$0451$304CMOVLW76

$0452$00B6MOVWF?welcome_Local_Text+5

$0453$3049MOVLW73

$0454$00B7MOVWF?welcome_Local_Text+6

$0455$3053MOVLW83

$0456$00B8MOVWF?welcome_Local_Text+7

$0457$3049MOVLW73

$0458$00B9MOVWF?welcome_Local_Text+8

$0459$304EMOVLW78

$045A$00BAMOVWF?welcome_Local_Text+9

$045B$3047MOVLW71

$045C$00BBMOVWF?welcome_Local_Text+10

$045D$3020MOVLW32

$045E$00BCMOVWF?welcome_Local_Text+11

$045F$302EMOVLW46

$0460$00BDMOVWF?welcome_Local_Text+12

$0461$302EMOVLW46

$0462$00BEMOVWF?welcome_Local_Text+13

$0463$302EMOVLW46

$0464$00BFMOVWF?welcome_Local_Text+14

$0465$01C0CLRF?welcome_Local_Text+15

$0466$30B1MOVLW?welcome_Local_Text

$0467$00C4MOVWFFARG_Lcd8_Out+2

$0468$2134CALL_lcd8_out

;mechprothese.pbas,70 :: Delay_ms(1000)

$0469$300BMOVLW11

$046A$00FCMOVWFSTACK_12

$046B$30FFMOVLW255

$046C$00FBMOVWFSTACK_11

$046D$30FFMOVLW255

$046E$00FAMOVWFSTACK_10

$046F$0BFCDECFSZSTACK_12, F

$0470$2C72GOTO$+2

$0471$2C79GOTO$+8

$0472$0BFBDECFSZSTACK_11, F

$0473$2C75GOTO$+2

$0474$2C78GOTO$+4

$0475$0BFADECFSZSTACK_10, F

$0476$2C75GOTO$-1

$0477$2C72GOTO$-5

$0478$2C6FGOTO$-9

$0479$3033MOVLW51

$047A$00FBMOVWFSTACK_11

$047B$30FFMOVLW255

$047C$00FAMOVWFSTACK_10

$047D$0BFBDECFSZSTACK_11, F

$047E$2C80GOTO$+2

$047F$2C83GOTO$+4

$0480$0BFADECFSZSTACK_10, F

$0481$2C80GOTO$-1

$0482$2C7DGOTO$-5

$0483$3088MOVLW136

$0484$00FAMOVWFSTACK_10

$0485$0BFADECFSZSTACK_10, F

$0486$2C85GOTO$-1

$0487$0000NOP

$0488$0000NOP

;mechprothese.pbas,71 :: Lcd8_out(4,-3,"INITALISING ....")

$0489$3004MOVLW4

$048A$1683BSFSTATUS, RP0

$048B$00C2MOVWFFARG_Lcd8_Out

$048C$30FDMOVLW253

$048D$00C3MOVWFFARG_Lcd8_Out+1

$048E$3049MOVLW73

$048F$00B1MOVWF?welcome_Local_Text+0

$0490$304EMOVLW78

$0491$00B2MOVWF?welcome_Local_Text+1

$0492$3049MOVLW73

$0493$00B3MOVWF?welcome_Local_Text+2

$0494$3054MOVLW84

$0495$00B4MOVWF?welcome_Local_Text+3

$0496$3041MOVLW65

$0497$00B5MOVWF?welcome_Local_Text+4

$0498$304CMOVLW76

$0499$00B6MOVWF?welcome_Local_Text+5

$049A$3049MOVLW73

$049B$00B7MOVWF?welcome_Local_Text+6

$049C$3053MOVLW83

$049D$00B8MOVWF?welcome_Local_Text+7

$049E$3049MOVLW73

$049F$00B9MOVWF?welcome_Local_Text+8

$04A0$304EMOVLW78

$04A1$00BAMOVWF?welcome_Local_Text+9

$04A2$3047MOVLW71

$04A3$00BBMOVWF?welcome_Local_Text+10

$04A4$3020MOVLW32

$04A5$00BCMOVWF?welcome_Local_Text+11

$04A6$302EMOVLW46

$04A7$00BDMOVWF?welcome_Local_Text+12

$04A8$302EMOVLW46

$04A9$00BEMOVWF?welcome_Local_Text+13

$04AA$302EMOVLW46

$04AB$00BFMOVWF?welcome_Local_Text+14

$04AC$302EMOVLW46

$04AD$00C0MOVWF?welcome_Local_Text+15

$04AE$01C1CLRF?welcome_Local_Text+16

$04AF$30B1MOVLW?welcome_Local_Text

$04B0$00C4MOVWFFARG_Lcd8_Out+2

$04B1$2134CALL_lcd8_out

;mechprothese.pbas,76 :: Delay_ms(1000)

$04B2$300BMOVLW11

$04B3$00FCMOVWFSTACK_12

$04B4$30FFMOVLW255

$04B5$00FBMOVWFSTACK_11

$04B6$30FFMOVLW255

$04B7$00FAMOVWFSTACK_10

$04B8$0BFCDECFSZSTACK_12, F

$04B9$2CBBGOTO$+2

$04BA$2CC2GOTO$+8

$04BB$0BFBDECFSZSTACK_11, F

$04BC$2CBEGOTO$+2

$04BD$2CC1GOTO$+4

$04BE$0BFADECFSZSTACK_10, F

$04BF$2CBEGOTO$-1

$04C0$2CBBGOTO$-5

$04C1$2CB8GOTO$-9

$04C2$3033MOVLW51

$04C3$00FBMOVWFSTACK_11

$04C4$30FFMOVLW255

$04C5$00FAMOVWFSTACK_10

$04C6$0BFBDECFSZSTACK_11, F

$04C7$2CC9GOTO$+2

$04C8$2CCCGOTO$+4

$04C9$0BFADECFSZSTACK_10, F

$04CA$2CC9GOTO$-1

$04CB$2CC6GOTO$-5

$04CC$3088MOVLW136

$04CD$00FAMOVWFSTACK_10

$04CE$0BFADECFSZSTACK_10, F

$04CF$2CCEGOTO$-1

$04D0$0000NOP

$04D1$0000NOP

$04D2$mechprothese_L_2:

$04D2$0008RETURN

$04D3$_pwm1_start:

;pwm_c21.ppas,61 ::

;pwm_c21.ppas,63 ::

$04D3$1303BCFSTATUS, RP1

$04D4$1683BSFSTATUS, RP0

$04D5$1107BCFTRISC, 2

;pwm_c21.ppas,64 ::

$04D6$1283BCFSTATUS, RP0

$04D7$1512BSFT2CON, 2

;pwm_c21.ppas,65 ::

$04D8$300CMOVLW12

$04D9$0497IORWFCCP1CON, 1

$04DA$pwm_c21_L_8:

;pwm_c21.ppas,66 ::

$04DA$0008RETURN

$04DB$_pwm2_start:

;pwm_c21.ppas,96 ::

;pwm_c21.ppas,98 ::

$04DB$1303BCFSTATUS, RP1

$04DC$1683BSFSTATUS, RP0

$04DD$1087BCFTRISC, 1

;pwm_c21.ppas,99 ::

$04DE$1283BCFSTATUS, RP0

$04DF$1512BSFT2CON, 2

;pwm_c21.ppas,100 ::

$04E0$300CMOVLW12

$04E1$049DIORWFCCP2CON, 1

$04E2$pwm_c21_L_14:

;pwm_c21.ppas,101 ::

$04E2$0008RETURN

$04E3$_readvalues:

;mechprothese.pbas,29 :: sub procedure ReadValues

;mechprothese.pbas,31 :: Manual = (ADC_read(4))/41 * 10 'read the level of the manual switch

$04E3$3004MOVLW4

$04E4$1303BCFSTATUS, RP1

$04E5$1683BSFSTATUS, RP0

$04E6$00C2MOVWFFARG_ADC_read

$04E7$217ECALL_adc_read

$04E8$3029MOVLW41

$04E9$00F4MOVWFSTACK_4

$04EA$01F5CLRFSTACK_4+1

$04EB$2117CALL_div_16x16_u

$04EC$300AMOVLW10

$04ED$00F4MOVWFSTACK_4

$04EE$01F5CLRFSTACK_4+1

$04EF$221ACALL_mul_16x16_u

$04F0$0870MOVFSTACK_0, 0

$04F1$00AFMOVWF_manual

$04F2$0871MOVFSTACK_0+1, 0

$04F3$00B0MOVWF_manual+1

;mechprothese.pbas,32 :: Manualdisplay = (Manual)*10/24

$04F4$300AMOVLW10

$04F5$00F4MOVWFSTACK_4

$04F6$01F5CLRFSTACK_4+1

$04F7$221ACALL_mul_16x16_u

$04F8$3018MOVLW24

$04F9$00F4MOVWFSTACK_4

$04FA$01F5CLRFSTACK_4+1

$04FB$2117CALL_div_16x16_u

$04FC$0870MOVFSTACK_0, 0

$04FD$00B1MOVWF_manualdisplay

$04FE$0871MOVFSTACK_0+1, 0

$04FF$00B2MOVWF_manualdisplay+1

;mechprothese.pbas,33 :: WordToStr(Manualdisplay,Stifness)

$0500$0870MOVFSTACK_0, 0

$0501$1683BSFSTATUS, RP0

$0502$00C2MOVWFFARG_WordToStr

$0503$0871MOVFSTACK_0+1, 0

$0504$00C3MOVWFFARG_WordToStr+1

$0505$3033MOVLW_stifness

$0506$00C4MOVWFFARG_WordToStr+2

$0507$21BECALL_wordtostr

;mechprothese.pbas,35 :: Spier1 = (ADC_read(0)-80)*5' 0 'read pressure in Spier1 and conversion to: min 0 mbar (steps of 100mbar) max 3000mbar

$0508$01C2CLRFFARG_ADC_read, 1

$0509$217ECALL_adc_read

$050A$3050MOVLW80

$050B$02F0SUBWFSTACK_0, 1

$050C$1C03BTFSSSTATUS, C

$050D$03F1DECFSTACK_0+1, 1

$050E$3005MOVLW5

$050F$00F4MOVWFSTACK_4

$0510$01F5CLRFSTACK_4+1

$0511$221ACALL_mul_16x16_u

$0512$0870MOVFSTACK_0, 0

$0513$00BAMOVWF_spier1

$0514$0871MOVFSTACK_0+1, 0

$0515$00BBMOVWF_spier1+1

;mechprothese.pbas,36 :: WordToStr(Spier1,SP1) ' convert word to string for display on LCD

$0516$0870MOVFSTACK_0, 0

$0517$1683BSFSTATUS, RP0

$0518$00C2MOVWFFARG_WordToStr

$0519$0871MOVFSTACK_0+1, 0

$051A$00C3MOVWFFARG_WordToStr+1

$051B$303CMOVLW_sp1

$051C$00C4MOVWFFARG_WordToStr+2

$051D$21BECALL_wordtostr

;mechprothese.pbas,39 :: Spier2 = (ADC_read(1)-80)*5'/ 34 *100 'read pressure in Spier2 and conversion to: min 0 mbar (steps of 100mbar) max 3000mbar

$051E$3001MOVLW1

$051F$00C2MOVWFFARG_ADC_read

$0520$217ECALL_adc_read

$0521$3050MOVLW80

$0522$02F0SUBWFSTACK_0, 1

$0523$1C03BTFSSSTATUS, C

$0524$03F1DECFSTACK_0+1, 1

$0525$3005MOVLW5

$0526$00F4MOVWFSTACK_4

$0527$01F5CLRFSTACK_4+1

$0528$221ACALL_mul_16x16_u

$0529$0870MOVFSTACK_0, 0

$052A$00C3MOVWF_spier2

$052B$0871MOVFSTACK_0+1, 0

$052C$00C4MOVWF_spier2+1

;mechprothese.pbas,40 :: WordToStr(Spier2,SP2) ' convert word to string for display on LCD

$052D$0870MOVFSTACK_0, 0

$052E$1683BSFSTATUS, RP0

$052F$00C2MOVWFFARG_WordToStr

$0530$0871MOVFSTACK_0+1, 0

$0531$00C3MOVWFFARG_WordToStr+1

$0532$3045MOVLW_sp2

$0533$00C4MOVWFFARG_WordToStr+2

$0534$21BECALL_wordtostr

;mechprothese.pbas,42 :: Spier3 = (ADC_read(2)-80)*5'/ 34 * 100 'read pressure in Spier3 and conversion to: min 0 mbar (steps of 100mbar) max 3000mbar

$0535$3002MOVLW2

$0536$00C2MOVWFFARG_ADC_read

$0537$217ECALL_adc_read

$0538$3050MOVLW80

$0539$02F0SUBWFSTACK_0, 1

$053A$1C03BTFSSSTATUS, C

$053B$03F1DECFSTACK_0+1, 1

$053C$3005MOVLW5

$053D$00F4MOVWFSTACK_4

$053E$01F5CLRFSTACK_4+1

$053F$221ACALL_mul_16x16_u

$0540$0870MOVFSTACK_0, 0

$0541$00CCMOVWF_spier3

$0542$0871MOVFSTACK_0+1, 0

$0543$00CDMOVWF_spier3+1

;mechprothese.pbas,43 :: WordToStr(Spier3,SP3) ' convert word to string for display on LCD

$0544$0870MOVFSTACK_0, 0

$0545$1683BSFSTATUS, RP0

$0546$00C2MOVWFFARG_WordToStr

$0547$0871MOVFSTACK_0+1, 0

$0548$00C3MOVWFFARG_WordToStr+1

$0549$304EMOVLW_sp3

$054A$00C4MOVWFFARG_WordToStr+2

$054B$21BECALL_wordtostr

;mechprothese.pbas,45 :: Fr = ADC_read(3) '/ 50 'Read frequentie

$054C$3003MOVLW3

$054D$00C2MOVWFFARG_ADC_read

$054E$217ECALL_adc_read

$054F$0870MOVFSTACK_0, 0

$0550$1283BCFSTATUS, RP0

$0551$00D5MOVWF_fr

$0552$0871MOVFSTACK_0+1, 0

$0553$00D6MOVWF_fr+1

;mechprothese.pbas,46 :: WordToStr(Fr,Frequentie)

$0554$0870MOVFSTACK_0, 0

$0555$1683BSFSTATUS, RP0

$0556$00C2MOVWFFARG_WordToStr

$0557$0871MOVFSTACK_0+1, 0

$0558$00C3MOVWFFARG_WordToStr+1

$0559$3057MOVLW_frequentie

$055A$00C4MOVWFFARG_WordToStr+2

$055B$21BECALL_wordtostr

$055C$mechprothese_L_0:

$055C$0008RETURN

$055D$_display:

;mechprothese.pbas,50 :: sub procedure Display 'write to LCD

;mechprothese.pbas,52 :: Lcd8_out(1,8,SP1) 'value of Spier1

$055D$3001MOVLW1

$055E$1303BCFSTATUS, RP1

$055F$1683BSFSTATUS, RP0

$0560$00C2MOVWFFARG_Lcd8_Out

$0561$3008MOVLW8

$0562$00C3MOVWFFARG_Lcd8_Out+1

$0563$303CMOVLW_sp1

$0564$00C4MOVWFFARG_Lcd8_Out+2

$0565$2134CALL_lcd8_out

;mechprothese.pbas,53 :: Lcd8_out(2,8,SP2) 'value of Spier2

$0566$3002MOVLW2

$0567$1683BSFSTATUS, RP0

$0568$00C2MOVWFFARG_Lcd8_Out

$0569$3008MOVLW8

$056A$00C3MOVWFFARG_Lcd8_Out+1

$056B$3045MOVLW_sp2

$056C$00C4MOVWFFARG_Lcd8_Out+2

$056D$2134CALL_lcd8_out

;mechprothese.pbas,54 :: Lcd8_out(3,4,SP3) 'value of Spier3

$056E$3003MOVLW3

$056F$1683BSFSTATUS, RP0

$0570$00C2MOVWFFARG_Lcd8_Out

$0571$3004MOVLW4

$0572$00C3MOVWFFARG_Lcd8_Out+1

$0573$304EMOVLW_sp3

$0574$00C4MOVWFFARG_Lcd8_Out+2

$0575$2134CALL_lcd8_out

;mechprothese.pbas,57 :: Delay_ms(100)

$0576$3002MOVLW2

$0577$00FCMOVWFSTACK_12

$0578$30FFMOVLW255

$0579$00FBMOVWFSTACK_11

$057A$30FFMOVLW255

$057B$00FAMOVWFSTACK_10

$057C$0BFCDECFSZSTACK_12, F

$057D$2D7FGOTO$+2

$057E$2D86GOTO$+8

$057F$0BFBDECFSZSTACK_11, F

$0580$2D82GOTO$+2

$0581$2D85GOTO$+4

$0582$0BFADECFSZSTACK_10, F

$0583$2D82GOTO$-1

$0584$2D7FGOTO$-5

$0585$2D7CGOTO$-9

$0586$3006MOVLW6

$0587$00FBMOVWFSTACK_11

$0588$30FFMOVLW255

$0589$00FAMOVWFSTACK_10

$058A$0BFBDECFSZSTACK_11, F

$058B$2D8DGOTO$+2

$058C$2D90GOTO$+4

$058D$0BFADECFSZSTACK_10, F

$058E$2D8DGOTO$-1

$058F$2D8AGOTO$-5

$0590$300AMOVLW10

$0591$00FAMOVWFSTACK_10

$0592$0BFADECFSZSTACK_10, F

$0593$2D92GOTO$-1

$0594$0000NOP

$0595$mechprothese_L_1:

$0595$0008RETURN

$0596$_pwm1_change_duty:

;pwm_c21.ppas,52 ::

;pwm_c21.ppas,54 ::

$0596$1303BCFSTATUS, RP1

$0597$1683BSFSTATUS, RP0

$0598$0812MOVFPR2, 0

$0599$00F0MOVWFSTACK_0

$059A$01F1CLRFSTACK_0+1

$059B$0870MOVFSTACK_0, 0

$059C$3F01ADDLW1

$059D$00F4MOVWFSTACK_4

$059E$3000MOVLW0

$059F$1803BTFSCSTATUS, C

$05A0$3F01ADDLW1

$05A1$0771ADDWFSTACK_0+1, 0

$05A2$00F5MOVWFSTACK_4+1

$05A3$1283BCFSTATUS, RP0

$05A4$086CMOVFFARG_PWM1_Change_Duty, 0

$05A5$00F0MOVWFSTACK_0

$05A6$01F1CLRFSTACK_0+1

$05A7$221ACALL_mul_16x16_u

$05A8$3006MOVLW6

$05A9$00F2MOVWFSTACK_2

$05AA$0870MOVFSTACK_0, 0

$05AB$00F8MOVWFSTACK_8

$05AC$0871MOVFSTACK_0+1, 0

$05AD$00F9MOVWFSTACK_8+1

$05AE$0872MOVFSTACK_2, 0

$05AF$L_PWM1_Change_Duty_2:

$05AF$1903BTFSCSTATUS, Z

$05B0$2DB6GOTOL_PWM1_Change_Duty_3

$05B1$0CF9RRFSTACK_8+1, 1

$05B2$0CF8RRFSTACK_8, 1

$05B3$13F9BCFSTACK_8+1, 7

$05B4$3FFFADDLW255

$05B5$2DAFGOTOL_PWM1_Change_Duty_2

$05B6$L_PWM1_Change_Duty_3:

;pwm_c21.ppas,55 ::

$05B6$0878MOVFSTACK_8, 0

$05B7$00F0MOVWFSTACK_0

$05B8$0879MOVFSTACK_8+1, 0

$05B9$00F1MOVWFSTACK_0+1

$05BA$0DF0RLFSTACK_0, 1

$05BB$0DF1RLFSTACK_0+1, 1

$05BC$1070BCFSTACK_0, 0

$05BD$0DF0RLFSTACK_0, 1

$05BE$0DF1RLFSTACK_0+1, 1

$05BF$1070BCFSTACK_0, 0

$05C0$0DF0RLFSTACK_0, 1

$05C1$0DF1RLFSTACK_0+1, 1

$05C2$1070BCFSTACK_0, 0

$05C3$0DF0RLFSTACK_0, 1

$05C4$0DF1RLFSTACK_0+1, 1

$05C5$1070BCFSTACK_0, 0

$05C6$3030MOVLW48

$05C7$0570ANDWFSTACK_0, 0

$05C8$00F6MOVWFSTACK_6

$05C9$0871MOVFSTACK_0+1, 0

$05CA$00F7MOVWFSTACK_6+1

$05CB$3000MOVLW0

$05CC$05F7ANDWFSTACK_6+1, 1

;pwm_c21.ppas,56 ::

$05CD$0878MOVFSTACK_8, 0

$05CE$00F0MOVWFSTACK_0

$05CF$0879MOVFSTACK_8+1, 0

$05D0$00F1MOVWFSTACK_0+1

$05D1$0CF1RRFSTACK_0+1, 1

$05D2$0CF0RRFSTACK_0, 1

$05D3$13F1BCFSTACK_0+1, 7

$05D4$0CF1RRFSTACK_0+1, 1

$05D5$0CF0RRFSTACK_0, 1

$05D6$13F1BCFSTACK_0+1, 7

$05D7$0870MOVFSTACK_0, 0

$05D8$0095MOVWFCCPR1L

;pwm_c21.ppas,57 ::

$05D9$300FMOVLW15

$05DA$0597ANDWFCCP1CON, 1

;pwm_c21.ppas,58 ::

$05DB$0876MOVFSTACK_6, 0

$05DC$0497IORWFCCP1CON, 1

$05DD$pwm_c21_L_7:

;pwm_c21.ppas,59 ::

$05DD$0008RETURN

$05DE$_pwm2_change_duty:

;pwm_c21.ppas,87 ::

;pwm_c21.ppas,89 ::

$05DE$1303BCFSTATUS, RP1

$05DF$1683BSFSTATUS, RP0

$05E0$0812MOVFPR2, 0

$05E1$00F0MOVWFSTACK_0

$05E2$01F1CLRFSTACK_0+1

$05E3$0870MOVFSTACK_0, 0

$05E4$3F01ADDLW1

$05E5$00F4MOVWFSTACK_4

$05E6$3000MOVLW0

$05E7$1803BTFSCSTATUS, C

$05E8$3F01ADDLW1

$05E9$0771ADDWFSTACK_0+1, 0

$05EA$00F5MOVWFSTACK_4+1

$05EB$1283BCFSTATUS, RP0

$05EC$086CMOVFFARG_PWM2_Change_Duty, 0

$05ED$00F0MOVWFSTACK_0

$05EE$01F1CLRFSTACK_0+1

$05EF$221ACALL_mul_16x16_u

$05F0$3006MOVLW6

$05F1$00F2MOVWFSTACK_2

$05F2$0870MOVFSTACK_0, 0

$05F3$00F8MOVWFSTACK_8

$05F4$0871MOVFSTACK_0+1, 0

$05F5$00F9MOVWFSTACK_8+1

$05F6$0872MOVFSTACK_2, 0

$05F7$L_PWM2_Change_Duty_4:

$05F7$1903BTFSCSTATUS, Z

$05F8$2DFEGOTOL_PWM2_Change_Duty_5

$05F9$0CF9RRFSTACK_8+1, 1

$05FA$0CF8RRFSTACK_8, 1

$05FB$13F9BCFSTACK_8+1, 7

$05FC$3FFFADDLW255

$05FD$2DF7GOTOL_PWM2_Change_Duty_4

$05FE$L_PWM2_Change_Duty_5:

;pwm_c21.ppas,90 ::

$05FE$0878MOVFSTACK_8, 0

$05FF$00F0MOVWFSTACK_0

$0600$0879MOVFSTACK_8+1, 0

$0601$00F1MOVWFSTACK_0+1

$0602$0DF0RLFSTACK_0, 1

$0603$0DF1RLFSTACK_0+1, 1

$0604$1070BCFSTACK_0, 0

$0605$0DF0RLFSTACK_0, 1

$0606$0DF1RLFSTACK_0+1, 1

$0607$1070BCFSTACK_0, 0

$0608$0DF0RLFSTACK_0, 1

$0609$0DF1RLFSTACK_0+1, 1

$060A$1070BCFSTACK_0, 0

$060B$0DF0RLFSTACK_0, 1

$060C$0DF1RLFSTACK_0+1, 1

$060D$1070BCFSTACK_0, 0

$060E$3030MOVLW48

$060F$0570ANDWFSTACK_0, 0

$0610$00F6MOVWFSTACK_6

$0611$0871MOVFSTACK_0+1, 0

$0612$00F7MOVWFSTACK_6+1

$0613$3000MOVLW0

$0614$05F7ANDWFSTACK_6+1, 1

;pwm_c21.ppas,91 ::

$0615$0878MOVFSTACK_8, 0

$0616$00F0MOVWFSTACK_0

$0617$0879MOVFSTACK_8+1, 0

$0618$00F1MOVWFSTACK_0+1

$0619$0CF1RRFSTACK_0+1, 1

$061A$0CF0RRFSTACK_0, 1

$061B$13F1BCFSTACK_0+1, 7

$061C$0CF1RRFSTACK_0+1, 1

$061D$0CF0RRFSTACK_0, 1

$061E$13F1BCFSTACK_0+1, 7

$061F$0870MOVFSTACK_0, 0

$0620$009BMOVWFCCPR2L

;pwm_c21.ppas,92 ::

$0621$300FMOVLW15

$0622$059DANDWFCCP2CON, 1

;pwm_c21.ppas,93 ::

$0623$0876MOVFSTACK_6, 0

$0624$049DIORWFCCP2CON, 1

$0625$pwm_c21_L_13:

;pwm_c21.ppas,94 ::

$0625$0008RETURN

$0626$_pwm1_init:

;pwm_c21.ppas,43 ::

;pwm_c21.ppas,45 ::

$0626$1303BCFSTATUS, RP1

$0627$1283BCFSTATUS, RP0

$0628$0195CLRFCCPR1L, 1

;pwm_c21.ppas,46 ::

$0629$1217BCFCCP1CON, 4

;pwm_c21.ppas,47 ::

$062A$1297BCFCCP1CON, 5

$062B$pwm_c21_L_6:

;pwm_c21.ppas,48 ::

$062B$0008RETURN

$062C$_pwm2_init:

;pwm_c21.ppas,78 ::

;pwm_c21.ppas,80 ::

$062C$1303BCFSTATUS, RP1

$062D$1283BCFSTATUS, RP0

$062E$019BCLRFCCPR2L, 1

;pwm_c21.ppas,81 ::

$062F$121DBCFCCP2CON, 4

;pwm_c21.ppas,82 ::

$0630$129DBCFCCP2CON, 5

$0631$pwm_c21_L_12:

;pwm_c21.ppas,83 ::

$0631$0008RETURN

$0800$_main:

;mechprothese.pbas,84 :: main:

$0800$_main_main:

;mechprothese.pbas,85 :: ADCON1 = %10000010 ' configure analog inputs and Vref

$0800$3082MOVLW130

$0801$1303BCFSTATUS, RP1

$0802$1683BSFSTATUS, RP0

$0803$009FMOVWFADCON1

;mechprothese.pbas,87 :: TRISA = %00101111 ' designate PORTA as input (Bit 0-3 :Spier1,2,3,hoek, Bit 5: Manual) !!!en toch ADC_read(4)!!!

$0804$302FMOVLW47

$0805$0085MOVWFTRISA

;mechprothese.pbas,88 :: TRISB = %00000000 ' Port B as output (Display DB0-DB7)

$0806$0186CLRFTRISB, 1

;mechprothese.pbas,89 :: TRISC = %00011001 ' 7 => 0 (E,RW,RS,switch2,switch1, Spier2+spier3,Spier1,switch0)

$0807$3019MOVLW25

$0808$0087MOVWFTRISC

;mechprothese.pbas,92 :: Lcd8_Init(PORTB,7,6,5,4,3,2,1,0,PORTC,5,6,7)'initialising Display (standard procedure) (DB7,...,DB0,RS,R/W,E)

$0809$3006MOVLWPORTB

$080A$00B1MOVWFFARG_Lcd8_Init

$080B$3007MOVLW7

$080C$00B2MOVWFFARG_Lcd8_Init+1

$080D$3006MOVLW6

$080E$00B3MOVWFFARG_Lcd8_Init+2

$080F$3005MOVLW5

$0810$00B4MOVWFFARG_Lcd8_Init+3

$0811$3004MOVLW4

$0812$00B5MOVWFFARG_Lcd8_Init+4

$0813$3003MOVLW3

$0814$00B6MOVWFFARG_Lcd8_Init+5

$0815$3002MOVLW2

$0816$00B7MOVWFFARG_Lcd8_Init+6

$0817$3001MOVLW1

$0818$00B8MOVWFFARG_Lcd8_Init+7

$0819$01B9CLRFFARG_Lcd8_Init+8, 1

$081A$3007MOVLWPORTC

$081B$00BAMOVWFFARG_Lcd8_Init+9

$081C$3005MOVLW5

$081D$00BBMOVWFFARG_Lcd8_Init+10

$081E$3006MOVLW6

$081F$00BCMOVWFFARG_Lcd8_Init+11

$0820$3007MOVLW7

$0821$00BDMOVWFFARG_Lcd8_Init+12

$0822$118ABCFPCLATH, 3

$0823$2245CALL_lcd8_init

$0824$158ABSFPCLATH, 3

;mechprothese.pbas,93 :: Lcd8_Cmd(LCD_CLEAR) 'clear screen

$0825$3001MOVLW1

$0826$1683BSFSTATUS, RP0

$0827$00C6MOVWFFARG_Lcd8_Cmd

$0828$118ABCFPCLATH, 3

$0829$2020CALL_lcd8_cmd

$082A$158ABSFPCLATH, 3

;mechprothese.pbas,94 :: Delay_ms(1000) '1sec delay

$082B$300BMOVLW11

$082C$00FCMOVWFSTACK_12

$082D$30FFMOVLW255

$082E$00FBMOVWFSTACK_11

$082F$30FFMOVLW255

$0830$00FAMOVWFSTACK_10

$0831$0BFCDECFSZSTACK_12, F

$0832$2834GOTO$+2

$0833$283BGOTO$+8

$0834$0BFBDECFSZSTACK_11, F

$0835$2837GOTO$+2

$0836$283AGOTO$+4

$0837$0BFADECFSZSTACK_10, F

$0838$2837GOTO$-1

$0839$2834GOTO$-5

$083A$2831GOTO$-9

$083B$3033MOVLW51

$083C$00FBMOVWFSTACK_11

$083D$30FFMOVLW255

$083E$00FAMOVWFSTACK_10

$083F$0BFBDECFSZSTACK_11, F

$0840$2842GOTO$+2

$0841$2845GOTO$+4

$0842$0BFADECFSZSTACK_10, F

$0843$2842GOTO$-1

$0844$283FGOTO$-5

$0845$3088MOVLW136

$0846$00FAMOVWFSTACK_10

$0847$0BFADECFSZSTACK_10, F

$0848$2847GOTO$-1

$0849$0000NOP

$084A$0000NOP

;mechprothese.pbas,97 :: welcome

$084B$118ABCFPCLATH, 3

$084C$233ECALL_welcome

$084D$158ABSFPCLATH, 3

;mechprothese.pbas,98 :: Delay_ms(1000) '1sec delay

$084E$300BMOVLW11

$084F$00FCMOVWFSTACK_12

$0850$30FFMOVLW255

$0851$00FBMOVWFSTACK_11

$0852$30FFMOVLW255

$0853$00FAMOVWFSTACK_10

$0854$0BFCDECFSZSTACK_12, F

$0855$2857GOTO$+2

$0856$285EGOTO$+8

$0857$0BFBDECFSZSTACK_11, F

$0858$285AGOTO$+2

$0859$285DGOTO$+4

$085A$0BFADECFSZSTACK_10, F

$085B$285AGOTO$-1

$085C$2857GOTO$-5

$085D$2854GOTO$-9

$085E$3033MOVLW51

$085F$00FBMOVWFSTACK_11

$0860$30FFMOVLW255

$0861$00FAMOVWFSTACK_10

$0862$0BFBDECFSZSTACK_11, F

$0863$2865GOTO$+2

$0864$2868GOTO$+4

$0865$0BFADECFSZSTACK_10, F

$0866$2865GOTO$-1

$0867$2862GOTO$-5

$0868$3088MOVLW136

$0869$00FAMOVWFSTACK_10

$086A$0BFADECFSZSTACK_10, F

$086B$286AGOTO$-1

$086C$0000NOP

$086D$0000NOP

;mechprothese.pbas,100 :: Lcd8_out(1,1,"Spier1: mb") 'standard procedure to write to LCD

$086E$3001MOVLW1

$086F$1683BSFSTATUS, RP0

$0870$00C2MOVWFFARG_Lcd8_Out

$0871$3001MOVLW1

$0872$00C3MOVWFFARG_Lcd8_Out+1

$0873$3053MOVLW83

$0874$00A0MOVWF?main_Local_Text+0

$0875$3070MOVLW112

$0876$00A1MOVWF?main_Local_Text+1

$0877$3069MOVLW105

$0878$00A2MOVWF?main_Local_Text+2

$0879$3065MOVLW101

$087A$00A3MOVWF?main_Local_Text+3

$087B$3072MOVLW114

$087C$00A4MOVWF?main_Local_Text+4

$087D$3031MOVLW49

$087E$00A5MOVWF?main_Local_Text+5

$087F$303AMOVLW58

$0880$00A6MOVWF?main_Local_Text+6

$0881$3020MOVLW32

$0882$00A7MOVWF?main_Local_Text+7

$0883$3020MOVLW32

$0884$00A8MOVWF?main_Local_Text+8

$0885$3020MOVLW32

$0886$00A9MOVWF?main_Local_Text+9

$0887$3020MOVLW32

$0888$00AAMOVWF?main_Local_Text+10

$0889$3020MOVLW32

$088A$00ABMOVWF?main_Local_Text+11

$088B$3020MOVLW32

$088C$00ACMOVWF?main_Local_Text+12

$088D$3020MOVLW32

$088E$00ADMOVWF?main_Local_Text+13

$088F$306DMOVLW109

$0890$00AEMOVWF?main_Local_Text+14

$0891$3062MOVLW98

$0892$00AFMOVWF?main_Local_Text+15

$0893$01B0CLRF?main_Local_Text+16

$0894$30A0MOVLW?main_Local_Text

$0895$00C4MOVWFFARG_Lcd8_Out+2

$0896$118ABCFPCLATH, 3

$0897$2134CALL_lcd8_out

$0898$158ABSFPCLATH, 3

;mechprothese.pbas,101 :: Lcd8_out(2,1,"Spier2: mb")

$0899$3002MOVLW2

$089A$1683BSFSTATUS, RP0

$089B$00C2MOVWFFARG_Lcd8_Out

$089C$3001MOVLW1

$089D$00C3MOVWFFARG_Lcd8_Out+1

$089E$3053MOVLW83

$089F$00A0MOVWF?main_Local_Text+0

$08A0$3070MOVLW112

$08A1$00A1MOVWF?main_Local_Text+1

$08A2$3069MOVLW105

$08A3$00A2MOVWF?main_Local_Text+2

$08A4$3065MOVLW101

$08A5$00A3MOVWF?main_Local_Text+3

$08A6$3072MOVLW114

$08A7$00A4MOVWF?main_Local_Text+4

$08A8$3032MOVLW50

$08A9$00A5MOVWF?main_Local_Text+5

$08AA$303AMOVLW58

$08AB$00A6MOVWF?main_Local_Text+6

$08AC$3020MOVLW32

$08AD$00A7MOVWF?main_Local_Text+7

$08AE$3020MOVLW32

$08AF$00A8MOVWF?main_Local_Text+8

$08B0$3020MOVLW32

$08B1$00A9MOVWF?main_Local_Text+9

$08B2$3020MOVLW32

$08B3$00AAMOVWF?main_Local_Text+10

$08B4$3020MOVLW32

$08B5$00ABMOVWF?main_Local_Text+11

$08B6$3020MOVLW32

$08B7$00ACMOVWF?main_Local_Text+12

$08B8$3020MOVLW32

$08B9$00ADMOVWF?main_Local_Text+13

$08BA$306DMOVLW109

$08BB$00AEMOVWF?main_Local_Text+14

$08BC$3062MOVLW98

$08BD$00AFMOVWF?main_Local_Text+15

$08BE$01B0CLRF?main_Local_Text+16

$08BF$30A0MOVLW?main_Local_Text

$08C0$00C4MOVWFFARG_Lcd8_Out+2

$08C1$118ABCFPCLATH, 3

$08C2$2134CALL_lcd8_out

$08C3$158ABSFPCLATH, 3

;mechprothese.pbas,102 :: Lcd8_out(3,-3,"Spier3: mb") 'to syncronise positions you have to scoop 5 places on line 3 and 4

$08C4$3003MOVLW3

$08C5$1683BSFSTATUS, RP0

$08C6$00C2MOVWFFARG_Lcd8_Out

$08C7$30FDMOVLW253

$08C8$00C3MOVWFFARG_Lcd8_Out+1

$08C9$3053MOVLW83

$08CA$00A0MOVWF?main_Local_Text+0

$08CB$3070MOVLW112

$08CC$00A1MOVWF?main_Local_Text+1

$08CD$3069MOVLW105

$08CE$00A2MOVWF?main_Local_Text+2

$08CF$3065MOVLW101

$08D0$00A3MOVWF?main_Local_Text+3

$08D1$3072MOVLW114

$08D2$00A4MOVWF?main_Local_Text+4

$08D3$3033MOVLW51

$08D4$00A5MOVWF?main_Local_Text+5

$08D5$303AMOVLW58

$08D6$00A6MOVWF?main_Local_Text+6

$08D7$3020MOVLW32

$08D8$00A7MOVWF?main_Local_Text+7

$08D9$3020MOVLW32

$08DA$00A8MOVWF?main_Local_Text+8

$08DB$3020MOVLW32

$08DC$00A9MOVWF?main_Local_Text+9

$08DD$3020MOVLW32

$08DE$00AAMOVWF?main_Local_Text+10

$08DF$3020MOVLW32

$08E0$00ABMOVWF?main_Local_Text+11

$08E1$3020MOVLW32

$08E2$00ACMOVWF?main_Local_Text+12

$08E3$3020MOVLW32

$08E4$00ADMOVWF?main_Local_Text+13

$08E5$306DMOVLW109

$08E6$00AEMOVWF?main_Local_Text+14

$08E7$3062MOVLW98

$08E8$00AFMOVWF?main_Local_Text+15

$08E9$01B0CLRF?main_Local_Text+16

$08EA$30A0MOVLW?main_Local_Text

$08EB$00C4MOVWFFARG_Lcd8_Out+2

$08EC$118ABCFPCLATH, 3

$08ED$2134CALL_lcd8_out

$08EE$158ABSFPCLATH, 3

;mechprothese.pbas,107 :: Count = 0

$08EF$01DECLRF_count

$08F0$01DFCLRF_count+1

;mechprothese.pbas,108 :: V=0

$08F1$01E0CLRF_v

$08F2$01E1CLRF_v+1

;mechprothese.pbas,109 :: A=0

$08F3$01E2CLRF_a

$08F4$01E3CLRF_a+1

;mechprothese.pbas,110 :: DemoKnop=0

$08F5$01E4CLRF_demoknop, 1

;mechprothese.pbas,111 :: ManKnop=0

$08F6$01E5CLRF_manknop, 1

;mechprothese.pbas,112 :: NopKnop=0

$08F7$01E6CLRF_nopknop, 1

;mechprothese.pbas,115 :: PWM1_init(8000) ' For Spier2 en 3 portC.2

$08F8$30F9MOVLW249

$08F9$1683BSFSTATUS, RP0

$08FA$0092MOVWFPR2

$08FB$118ABCFPCLATH, 3

$08FC$2626CALL_pwm1_init

$08FD$158ABSFPCLATH, 3

;mechprothese.pbas,116 :: PWM1_start

$08FE$118ABCFPCLATH, 3

$08FF$24D3CALL_pwm1_start

$0900$158ABSFPCLATH, 3

;mechprothese.pbas,118 :: PWM2_init(8000) ' For Spier1 portC.1

$0901$30F9MOVLW249

$0902$1683BSFSTATUS, RP0

$0903$0092MOVWFPR2

$0904$118ABCFPCLATH, 3

$0905$262CCALL_pwm2_init

$0906$158ABSFPCLATH, 3

;mechprothese.pbas,119 :: PWM2_start

$0907$118ABCFPCLATH, 3

$0908$24DBCALL_pwm2_start

$0909$158ABSFPCLATH, 3

;mechprothese.pbas,123 :: Lus:

$090A$_main_lus:

;mechprothese.pbas,125 :: ReadValues 'Spier1,2,3 and Hoek are read and convert to the right values

$090A$118ABCFPCLATH, 3

$090B$24E3CALL_readvalues

$090C$158ABSFPCLATH, 3

;mechprothese.pbas,126 :: Display 'puts the values on the Display

$090D$118ABCFPCLATH, 3

$090E$255DCALL_display

$090F$158ABSFPCLATH, 3

;mechprothese.pbas,131 :: if PORTC.0 =1 then

$0910$3001MOVLW1

$0911$0507ANDWFPORTC, 0

$0912$00F2MOVWFSTACK_2

$0913$0872MOVFSTACK_2, 0

$0914$3A01XORLW1

$0915$1D03BTFSSSTATUS, Z

$0916$2954GOTOmechprothese_L_5

$0917$mechprothese_L_4:

;mechprothese.pbas,132 :: DemoKnop=1

$0917$3001MOVLW1

$0918$00E4MOVWF_demoknop

;mechprothese.pbas,133 :: ManKnop=0

$0919$01E5CLRF_manknop, 1

;mechprothese.pbas,134 :: NopKnop=0

$091A$01E6CLRF_nopknop, 1

;mechprothese.pbas,135 :: Lcd8_out(4,-3," ")

$091B$3004MOVLW4

$091C$1683BSFSTATUS, RP0

$091D$00C2MOVWFFARG_Lcd8_Out

$091E$30FDMOVLW253

$091F$00C3MOVWFFARG_Lcd8_Out+1

$0920$3020MOVLW32

$0921$00A0MOVWF?main_Local_Text+0

$0922$3020MOVLW32

$0923$00A1MOVWF?main_Local_Text+1

$0924$3020MOVLW32

$0925$00A2MOVWF?main_Local_Text+2

$0926$3020MOVLW32

$0927$00A3MOVWF?main_Local_Text+3

$0928$3020MOVLW32

$0929$00A4MOVWF?main_Local_Text+4

$092A$3020MOVLW32

$092B$00A5MOVWF?main_Local_Text+5

$092C$3020MOVLW32

$092D$00A6MOVWF?main_Local_Text+6

$092E$3020MOVLW32

$092F$00A7MOVWF?main_Local_Text+7

$0930$3020MOVLW32

$0931$00A8MOVWF?main_Local_Text+8

$0932$3020MOVLW32

$0933$00A9MOVWF?main_Local_Text+9

$0934$3020MOVLW32

$0935$00AAMOVWF?main_Local_Text+10

$0936$3020MOVLW32

$0937$00ABMOVWF?main_Local_Text+11

$0938$3020MOVLW32

$0939$00ACMOVWF?main_Local_Text+12

$093A$3020MOVLW32

$093B$00ADMOVWF?main_Local_Text+13

$093C$3020MOVLW32

$093D$00AEMOVWF?main_Local_Text+14

$093E$3020MOVLW32

$093F$00AFMOVWF?main_Local_Text+15

$0940$01B0CLRF?main_Local_Text+16

$0941$30A0MOVLW?main_Local_Text

$0942$00C4MOVWFFARG_Lcd8_Out+2

$0943$118ABCFPCLATH, 3

$0944$2134CALL_lcd8_out

$0945$158ABSFPCLATH, 3

;mechprothese.pbas,136 :: Count = 0

$0946$01DECLRF_count

$0947$01DFCLRF_count+1

;mechprothese.pbas,137 :: A=0

$0948$01E2CLRF_a

$0949$01E3CLRF_a+1

;mechprothese.pbas,138 :: V=0

$094A$01E0CLRF_v

$094B$01E1CLRF_v+1

;mechprothese.pbas,139 :: PWM1_change_duty(0)

$094C$01ECCLRFFARG_PWM1_Change_Duty, 1

$094D$118ABCFPCLATH, 3

$094E$2596CALL_pwm1_change_duty

$094F$158ABSFPCLATH, 3

;mechprothese.pbas,140 :: PWM2_change_duty(0)

$0950$01ECCLRFFARG_PWM2_Change_Duty, 1

$0951$118ABCFPCLATH, 3

$0952$25DECALL_pwm2_change_duty

$0953$158ABSFPCLATH, 3

$0954$mechprothese_L_5:

;mechprothese.pbas,141 :: end if

$0954$mechprothese_L_6:

;mechprothese.pbas,143 :: if PORTC.3=1 then

$0954$3000MOVLW0

$0955$1987BTFSCPORTC, 3

$0956$3001MOVLW1

$0957$00F2MOVWFSTACK_2

$0958$0872MOVFSTACK_2, 0

$0959$3A01XORLW1

$095A$1D03BTFSSSTATUS, Z

$095B$2999GOTOmechprothese_L_8

$095C$mechprothese_L_7:

;mechprothese.pbas,144 :: DemoKnop=0

$095C$01E4CLRF_demoknop, 1

;mechprothese.pbas,145 :: ManKnop=1

$095D$3001MOVLW1

$095E$00E5MOVWF_manknop

;mechprothese.pbas,146 :: NopKnop=0

$095F$01E6CLRF_nopknop, 1

;mechprothese.pbas,147 :: Lcd8_out(4,-3," ")

$0960$3004MOVLW4

$0961$1683BSFSTATUS, RP0

$0962$00C2MOVWFFARG_Lcd8_Out

$0963$30FDMOVLW253

$0964$00C3MOVWFFARG_Lcd8_Out+1

$0965$3020MOVLW32

$0966$00A0MOVWF?main_Local_Text+0

$0967$3020MOVLW32

$0968$00A1MOVWF?main_Local_Text+1

$0969$3020MOVLW32

$096A$00A2MOVWF?main_Local_Text+2

$096B$3020MOVLW32

$096C$00A3MOVWF?main_Local_Text+3

$096D$3020MOVLW32

$096E$00A4MOVWF?main_Local_Text+4

$096F$3020MOVLW32

$0970$00A5MOVWF?main_Local_Text+5

$0971$3020MOVLW32

$0972$00A6MOVWF?main_Local_Text+6

$0973$3020MOVLW32

$0974$00A7MOVWF?main_Local_Text+7

$0975$3020MOVLW32

$0976$00A8MOVWF?main_Local_Text+8

$0977$3020MOVLW32

$0978$00A9MOVWF?main_Local_Text+9

$0979$3020MOVLW32

$097A$00AAMOVWF?main_Local_Text+10

$097B$3020MOVLW32

$097C$00ABMOVWF?main_Local_Text+11

$097D$3020MOVLW32

$097E$00ACMOVWF?main_Local_Text+12

$097F$3020MOVLW32

$0980$00ADMOVWF?main_Local_Text+13

$0981$3020MOVLW32

$0982$00AEMOVWF?main_Local_Text+14

$0983$3020MOVLW32

$0984$00AFMOVWF?main_Local_Text+15

$0985$01B0CLRF?main_Local_Text+16

$0986$30A0MOVLW?main_Local_Text

$0987$00C4MOVWFFARG_Lcd8_Out+2

$0988$118ABCFPCLATH, 3

$0989$2134CALL_lcd8_out

$098A$158ABSFPCLATH, 3

;mechprothese.pbas,148 :: Count = 0

$098B$01DECLRF_count

$098C$01DFCLRF_count+1

;mechprothese.pbas,149 :: A=0

$098D$01E2CLRF_a

$098E$01E3CLRF_a+1

;mechprothese.pbas,150 :: V=0

$098F$01E0CLRF_v

$0990$01E1CLRF_v+1

;mechprothese.pbas,151 :: PWM1_change_duty(0)

$0991$01ECCLRFFARG_PWM1_Change_Duty, 1

$0992$118ABCFPCLATH, 3

$0993$2596CALL_pwm1_change_duty

$0994$158ABSFPCLATH, 3

;mechprothese.pbas,152 :: PWM2_change_duty(0)

$0995$01ECCLRFFARG_PWM2_Change_Duty, 1

$0996$118ABCFPCLATH, 3

$0997$25DECALL_pwm2_change_duty

$0998$158ABSFPCLATH, 3

$0999$mechprothese_L_8:

;mechprothese.pbas,154 :: end if

$0999$mechprothese_L_9:

;mechprothese.pbas,157 :: if PORTC.4=1 then

$0999$3000MOVLW0

$099A$1A07BTFSCPORTC, 4

$099B$3001MOVLW1

$099C$00F2MOVWFSTACK_2

$099D$0872MOVFSTACK_2, 0

$099E$3A01XORLW1

$099F$1D03BTFSSSTATUS, Z

$09A0$29A5GOTOmechprothese_L_11

$09A1$mechprothese_L_10:

;mechprothese.pbas,158 :: DemoKnop=0

$09A1$01E4CLRF_demoknop, 1

;mechprothese.pbas,159 :: ManKnop=0

$09A2$01E5CLRF_manknop, 1

;mechprothese.pbas,160 :: NopKnop=1

$09A3$3001MOVLW1

$09A4$00E6MOVWF_nopknop

$09A5$mechprothese_L_11:

;mechprothese.pbas,161 :: end if

$09A5$mechprothese_L_12:

;mechprothese.pbas,165 :: if DemoKnop=1 then

$09A5$0864MOVF_demoknop, 0

$09A6$3A01XORLW1

$09A7$1D03BTFSSSTATUS, Z

$09A8$29AAGOTOmechprothese_L_14

$09A9$mechprothese_L_13:

;mechprothese.pbas,166 :: goto Demo

$09A9$29EEGOTO_main_demo

$09AA$mechprothese_L_14:

;mechprothese.pbas,167 :: end if

$09AA$mechprothese_L_15:

;mechprothese.pbas,169 :: if ManKnop=1 then

$09AA$0865MOVF_manknop, 0

$09AB$3A01XORLW1

$09AC$1D03BTFSSSTATUS, Z

$09AD$29AFGOTOmechprothese_L_17

$09AE$mechprothese_L_16:

;mechprothese.pbas,170 :: goto manual

$09AE$2AF4GOTO_main_manual

$09AF$mechprothese_L_17:

;mechprothese.pbas,171 :: end if

$09AF$mechprothese_L_18:

;mechprothese.pbas,173 :: if NopKnop=1 then

$09AF$0866MOVF_nopknop, 0

$09B0$3A01XORLW1

$09B1$1D03BTFSSSTATUS, Z

$09B2$29B4GOTOmechprothese_L_20

$09B3$mechprothese_L_19:

;mechprothese.pbas,174 :: goto NOP_lus

$09B3$29B4GOTO_main_nop_lus

$09B4$mechprothese_L_20:

;mechprothese.pbas,175 :: end if

$09B4$mechprothese_L_21:

;mechprothese.pbas,178 :: NOP_lus:

$09B4$_main_nop_lus:

;mechprothese.pbas,179 :: Lcd8_out(4,-3," ")

$09B4$3004MOVLW4

$09B5$1683BSFSTATUS, RP0

$09B6$00C2MOVWFFARG_Lcd8_Out

$09B7$30FDMOVLW253

$09B8$00C3MOVWFFARG_Lcd8_Out+1

$09B9$3020MOVLW32

$09BA$00A0MOVWF?main_Local_Text+0

$09BB$3020MOVLW32

$09BC$00A1MOVWF?main_Local_Text+1

$09BD$3020MOVLW32

$09BE$00A2MOVWF?main_Local_Text+2

$09BF$3020MOVLW32

$09C0$00A3MOVWF?main_Local_Text+3

$09C1$3020MOVLW32

$09C2$00A4MOVWF?main_Local_Text+4

$09C3$3020MOVLW32

$09C4$00A5MOVWF?main_Local_Text+5

$09C5$3020MOVLW32

$09C6$00A6MOVWF?main_Local_Text+6

$09C7$3020MOVLW32

$09C8$00A7MOVWF?main_Local_Text+7

$09C9$3020MOVLW32

$09CA$00A8MOVWF?main_Local_Text+8

$09CB$3020MOVLW32

$09CC$00A9MOVWF?main_Local_Text+9

$09CD$3020MOVLW32

$09CE$00AAMOVWF?main_Local_Text+10

$09CF$3020MOVLW32

$09D0$00ABMOVWF?main_Local_Text+11

$09D1$3020MOVLW32

$09D2$00ACMOVWF?main_Local_Text+12

$09D3$3020MOVLW32

$09D4$00ADMOVWF?main_Local_Text+13

$09D5$3020MOVLW32

$09D6$00AEMOVWF?main_Local_Text+14

$09D7$3020MOVLW32

$09D8$00AFMOVWF?main_Local_Text+15

$09D9$01B0CLRF?main_Local_Text+16

$09DA$30A0MOVLW?main_Local_Text

$09DB$00C4MOVWFFARG_Lcd8_Out+2

$09DC$118ABCFPCLATH, 3

$09DD$2134CALL_lcd8_out

$09DE$158ABSFPCLATH, 3

;mechprothese.pbas,180 :: Count = 0

$09DF$01DECLRF_count

$09E0$01DFCLRF_count+1

;mechprothese.pbas,181 :: A=0

$09E1$01E2CLRF_a

$09E2$01E3CLRF_a+1

;mechprothese.pbas,182 :: V=0

$09E3$01E0CLRF_v

$09E4$01E1CLRF_v+1

;mechprothese.pbas,183 :: PWM1_change_duty(0)

$09E5$01ECCLRFFARG_PWM1_Change_Duty, 1

$09E6$118ABCFPCLATH, 3

$09E7$2596CALL_pwm1_change_duty

$09E8$158ABSFPCLATH, 3

;mechprothese.pbas,184 :: PWM2_change_duty(0)

$09E9$01ECCLRFFARG_PWM2_Change_Duty, 1

$09EA$118ABCFPCLATH, 3

$09EB$25DECALL_pwm2_change_duty

$09EC$158ABSFPCLATH, 3

;mechprothese.pbas,186 :: goto Lus

$09ED$290AGOTO_main_lus

;mechprothese.pbas,187 :: Demo:

$09EE$_main_demo:

;mechprothese.pbas,188 :: Lcd8_out(4,7," Demo")

$09EE$3004MOVLW4

$09EF$1683BSFSTATUS, RP0

$09F0$00C2MOVWFFARG_Lcd8_Out

$09F1$3007MOVLW7

$09F2$00C3MOVWFFARG_Lcd8_Out+1

$09F3$3020MOVLW32

$09F4$00A0MOVWF?main_Local_Text+0

$09F5$3044MOVLW68

$09F6$00A1MOVWF?main_Local_Text+1

$09F7$3065MOVLW101

$09F8$00A2MOVWF?main_Local_Text+2

$09F9$306DMOVLW109

$09FA$00A3MOVWF?main_Local_Text+3

$09FB$306FMOVLW111

$09FC$00A4MOVWF?main_Local_Text+4

$09FD$01A5CLRF?main_Local_Text+5

$09FE$30A0MOVLW?main_Local_Text

$09FF$00C4MOVWFFARG_Lcd8_Out+2

$0A00$118ABCFPCLATH, 3

$0A01$2134CALL_lcd8_out

$0A02$158ABSFPCLATH, 3

;mechprothese.pbas,190 :: if Fr<300 then

$0A03$3001MOVLW1

$0A04$0256SUBWF_fr+1, 0

$0A05$1D03BTFSSSTATUS, Z

$0A06$2A09GOTOL_main_0

$0A07$302CMOVLW44

$0A08$0255SUBWF_fr, 0

$0A09$L_main_0:

$0A09$1803BTFSCSTATUS, C

$0A0A$2A28GOTOmechprothese_L_23

$0A0B$mechprothese_L_22:

;mechprothese.pbas,191 :: T=10

$0A0B$300AMOVLW10

$0A0C$00E7MOVWF_t

$0A0D$01E8CLRF_t+1

;mechprothese.pbas,192 :: periode=60

$0A0E$303CMOVLW60

$0A0F$00E9MOVWF_periode

$0A10$01EACLRF_periode+1

;mechprothese.pbas,193 :: Lcd8_out(4,-3,"Slow ")

$0A11$3004MOVLW4

$0A12$1683BSFSTATUS, RP0

$0A13$00C2MOVWFFARG_Lcd8_Out

$0A14$30FDMOVLW253

$0A15$00C3MOVWFFARG_Lcd8_Out+1

$0A16$3053MOVLW83

$0A17$00A0MOVWF?main_Local_Text+0

$0A18$306CMOVLW108

$0A19$00A1MOVWF?main_Local_Text+1

$0A1A$306FMOVLW111

$0A1B$00A2MOVWF?main_Local_Text+2

$0A1C$3077MOVLW119

$0A1D$00A3MOVWF?main_Local_Text+3

$0A1E$3020MOVLW32

$0A1F$00A4MOVWF?main_Local_Text+4

$0A20$3020MOVLW32

$0A21$00A5MOVWF?main_Local_Text+5

$0A22$01A6CLRF?main_Local_Text+6

$0A23$30A0MOVLW?main_Local_Text

$0A24$00C4MOVWFFARG_Lcd8_Out+2

$0A25$118ABCFPCLATH, 3

$0A26$2134CALL_lcd8_out

$0A27$158ABSFPCLATH, 3

$0A28$mechprothese_L_23:

;mechprothese.pbas,194 :: end if

$0A28$mechprothese_L_24:

;mechprothese.pbas,196 :: if Fr>=300 and (Fr<=400) then

$0A28$0856MOVF_fr+1, 0

$0A29$3C01SUBLW1

$0A2A$1D03BTFSSSTATUS, Z

$0A2B$2A2EGOTOL_main_1

$0A2C$0855MOVF_fr, 0

$0A2D$3C90SUBLW144

$0A2E$L_main_1:

$0A2E$30FFMOVLW255

$0A2F$1C03BTFSSSTATUS, C

$0A30$3000MOVLW0

$0A31$00F0MOVWFSTACK_0

$0A32$302CMOVLW44

$0A33$0570ANDWFSTACK_0, 0

$0A34$00F2MOVWFSTACK_2

$0A35$3000MOVLW0

$0A36$3901ANDLW1

$0A37$00F3MOVWFSTACK_2+1

$0A38$0873MOVFSTACK_2+1, 0

$0A39$0256SUBWF_fr+1, 0

$0A3A$1D03BTFSSSTATUS, Z

$0A3B$2A3EGOTOL_main_2

$0A3C$0872MOVFSTACK_2, 0

$0A3D$0255SUBWF_fr, 0

$0A3E$L_main_2:

$0A3E$1C03BTFSSSTATUS, C

$0A3F$2A5DGOTOmechprothese_L_26

$0A40$mechprothese_L_25:

;mechprothese.pbas,197 :: T=25

$0A40$3019MOVLW25

$0A41$00E7MOVWF_t

$0A42$01E8CLRF_t+1

;mechprothese.pbas,198 :: periode=40

$0A43$3028MOVLW40

$0A44$00E9MOVWF_periode

$0A45$01EACLRF_periode+1

;mechprothese.pbas,199 :: Lcd8_out(4,-3,"Medium")

$0A46$3004MOVLW4

$0A47$1683BSFSTATUS, RP0

$0A48$00C2MOVWFFARG_Lcd8_Out

$0A49$30FDMOVLW253

$0A4A$00C3MOVWFFARG_Lcd8_Out+1

$0A4B$304DMOVLW77

$0A4C$00A0MOVWF?main_Local_Text+0

$0A4D$3065MOVLW101

$0A4E$00A1MOVWF?main_Local_Text+1

$0A4F$3064MOVLW100

$0A50$00A2MOVWF?main_Local_Text+2

$0A51$3069MOVLW105

$0A52$00A3MOVWF?main_Local_Text+3

$0A53$3075MOVLW117

$0A54$00A4MOVWF?main_Local_Text+4

$0A55$306DMOVLW109

$0A56$00A5MOVWF?main_Local_Text+5

$0A57$01A6CLRF?main_Local_Text+6

$0A58$30A0MOVLW?main_Local_Text

$0A59$00C4MOVWFFARG_Lcd8_Out+2

$0A5A$118ABCFPCLATH, 3

$0A5B$2134CALL_lcd8_out

$0A5C$158ABSFPCLATH, 3

$0A5D$mechprothese_L_26:

;mechprothese.pbas,200 :: end if

$0A5D$mechprothese_L_27:

;mechprothese.pbas,202 :: if Fr>400 then

$0A5D$0856MOVF_fr+1, 0

$0A5E$3C01SUBLW1

$0A5F$1D03BTFSSSTATUS, Z

$0A60$2A63GOTOL_main_3

$0A61$0855MOVF_fr, 0

$0A62$3C90SUBLW144

$0A63$L_main_3:

$0A63$1803BTFSCSTATUS, C

$0A64$2A82GOTOmechprothese_L_29

$0A65$mechprothese_L_28:

;mechprothese.pbas,203 :: T=50

$0A65$3032MOVLW50

$0A66$00E7MOVWF_t

$0A67$01E8CLRF_t+1

;mechprothese.pbas,204 :: periode=25

$0A68$3019MOVLW25

$0A69$00E9MOVWF_periode

$0A6A$01EACLRF_periode+1

;mechprothese.pbas,205 :: Lcd8_out(4,-3,"Fast ")

$0A6B$3004MOVLW4

$0A6C$1683BSFSTATUS, RP0

$0A6D$00C2MOVWFFARG_Lcd8_Out

$0A6E$30FDMOVLW253

$0A6F$00C3MOVWFFARG_Lcd8_Out+1

$0A70$3046MOVLW70

$0A71$00A0MOVWF?main_Local_Text+0

$0A72$3061MOVLW97

$0A73$00A1MOVWF?main_Local_Text+1

$0A74$3073MOVLW115

$0A75$00A2MOVWF?main_Local_Text+2

$0A76$3074MOVLW116

$0A77$00A3MOVWF?main_Local_Text+3

$0A78$3020MOVLW32

$0A79$00A4MOVWF?main_Local_Text+4

$0A7A$3020MOVLW32

$0A7B$00A5MOVWF?main_Local_Text+5

$0A7C$01A6CLRF?main_Local_Text+6

$0A7D$30A0MOVLW?main_Local_Text

$0A7E$00C4MOVWFFARG_Lcd8_Out+2

$0A7F$118ABCFPCLATH, 3

$0A80$2134CALL_lcd8_out

$0A81$158ABSFPCLATH, 3

$0A82$mechprothese_L_29:

;mechprothese.pbas,206 :: end if

$0A82$mechprothese_L_30:

;mechprothese.pbas,208 :: Inc(Count)

$0A82$0ADEINCF_count, 1

$0A83$1903BTFSCSTATUS, Z

$0A84$0ADFINCF_count+1, 1

;mechprothese.pbas,210 :: If Count < periode then

$0A85$086AMOVF_periode+1, 0

$0A86$025FSUBWF_count+1, 0

$0A87$1D03BTFSSSTATUS, Z

$0A88$2A8BGOTOL_main_4

$0A89$0869MOVF_periode, 0

$0A8A$025ESUBWF_count, 0

$0A8B$L_main_4:

$0A8B$1803BTFSCSTATUS, C

$0A8C$2AA6GOTOmechprothese_L_32

$0A8D$mechprothese_L_31:

;mechprothese.pbas,212 :: if A<250 then

$0A8D$3000MOVLW0

$0A8E$0263SUBWF_a+1, 0

$0A8F$1D03BTFSSSTATUS, Z

$0A90$2A93GOTOL_main_5

$0A91$30FAMOVLW250

$0A92$0262SUBWF_a, 0

$0A93$L_main_5:

$0A93$1803BTFSCSTATUS, C

$0A94$2A9BGOTOmechprothese_L_35

$0A95$mechprothese_L_34:

;mechprothese.pbas,213 :: A=A+T

$0A95$0867MOVF_t, 0

$0A96$07E2ADDWF_a, 1

$0A97$0868MOVF_t+1, 0

$0A98$1803BTFSCSTATUS, C

$0A99$3F01ADDLW1

$0A9A$07E3ADDWF_a+1, 1

$0A9B$mechprothese_L_35:

;mechprothese.pbas,214 :: end if

$0A9B$mechprothese_L_36:

;mechprothese.pbas,216 :: PWM1_change_duty(0)

$0A9B$01ECCLRFFARG_PWM1_Change_Duty, 1

$0A9C$118ABCFPCLATH, 3

$0A9D$2596CALL_pwm1_change_duty

$0A9E$158ABSFPCLATH, 3

;mechprothese.pbas,217 :: PWM2_change_duty(A)

$0A9F$0862MOVF_a, 0

$0AA0$00ECMOVWFFARG_PWM2_Change_Duty

$0AA1$118ABCFPCLATH, 3

$0AA2$25DECALL_pwm2_change_duty

$0AA3$158ABSFPCLATH, 3

;mechprothese.pbas,218 :: B=1

$0AA4$3001MOVLW1

$0AA5$00EBMOVWF_b

$0AA6$mechprothese_L_32:

;mechprothese.pbas,219 :: end if

$0AA6$mechprothese_L_33:

;mechprothese.pbas,221 :: If Count > periode then

$0AA6$085FMOVF_count+1, 0

$0AA7$026ASUBWF_periode+1, 0

$0AA8$1D03BTFSSSTATUS, Z

$0AA9$2AACGOTOL_main_6

$0AAA$085EMOVF_count, 0

$0AAB$0269SUBWF_periode, 0

$0AAC$L_main_6:

$0AAC$1803BTFSCSTATUS, C

$0AAD$2AD9GOTOmechprothese_L_38

$0AAE$mechprothese_L_37:

;mechprothese.pbas,223 :: if A=250 and(B=1) then

$0AAE$086BMOVF_b, 0

$0AAF$3A01XORLW1

$0AB0$30FFMOVLW255

$0AB1$1D03BTFSSSTATUS, Z

$0AB2$3000MOVLW0

$0AB3$00F0MOVWFSTACK_0

$0AB4$30FAMOVLW250

$0AB5$0570ANDWFSTACK_0, 0

$0AB6$00F2MOVWFSTACK_2

$0AB7$3000MOVLW0

$0AB8$0663XORWF_a+1, 0

$0AB9$1D03BTFSSSTATUS, Z

$0ABA$2ABDGOTOL_main_7

$0ABB$0872MOVFSTACK_2, 0

$0ABC$0662XORWF_a, 0

$0ABD$L_main_7:

$0ABD$1D03BTFSSSTATUS, Z

$0ABE$2AC2GOTOmechprothese_L_41

$0ABF$mechprothese_L_40:

;mechprothese.pbas,224 :: A=0

$0ABF$01E2CLRF_a

$0AC0$01E3CLRF_a+1

;mechprothese.pbas,225 :: B=0

$0AC1$01EBCLRF_b, 1

$0AC2$mechprothese_L_41:

;mechprothese.pbas,226 :: end if

$0AC2$mechprothese_L_42:

;mechprothese.pbas,228 :: if A<250 then

$0AC2$3000MOVLW0

$0AC3$0263SUBWF_a+1, 0

$0AC4$1D03BTFSSSTATUS, Z

$0AC5$2AC8GOTOL_main_8

$0AC6$30FAMOVLW250

$0AC7$0262SUBWF_a, 0

$0AC8$L_main_8:

$0AC8$1803BTFSCSTATUS, C

$0AC9$2AD0GOTOmechprothese_L_44

$0ACA$mechprothese_L_43:

;mechprothese.pbas,229 :: A=A+T

$0ACA$0867MOVF_t, 0

$0ACB$07E2ADDWF_a, 1

$0ACC$0868MOVF_t+1, 0

$0ACD$1803BTFSCSTATUS, C

$0ACE$3F01ADDLW1

$0ACF$07E3ADDWF_a+1, 1

$0AD0$mechprothese_L_44:

;mechprothese.pbas,230 :: end if

$0AD0$mechprothese_L_45:

;mechprothese.pbas,232 :: PWM1_change_duty(A)

$0AD0$0862MOVF_a, 0

$0AD1$00ECMOVWFFARG_PWM1_Change_Duty

$0AD2$118ABCFPCLATH, 3

$0AD3$2596CALL_pwm1_change_duty

$0AD4$158ABSFPCLATH, 3

;mechprothese.pbas,233 :: PWM2_change_duty(0)

$0AD5$01ECCLRFFARG_PWM2_Change_Duty, 1

$0AD6$118ABCFPCLATH, 3

$0AD7$25DECALL_pwm2_change_duty

$0AD8$158ABSFPCLATH, 3

$0AD9$mechprothese_L_38:

;mechprothese.pbas,235 :: end if

$0AD9$mechprothese_L_39:

;mechprothese.pbas,236 :: If Count > 2*periode then

$0AD9$3001MOVLW1

$0ADA$00F4MOVWFSTACK_4

$0ADB$0869MOVF_periode, 0

$0ADC$00F0MOVWFSTACK_0

$0ADD$086AMOVF_periode+1, 0

$0ADE$00F1MOVWFSTACK_0+1

$0ADF$0874MOVFSTACK_4, 0

$0AE0$L_main_9:

$0AE0$1903BTFSCSTATUS, Z

$0AE1$2AE7GOTOL_main_10

$0AE2$0DF0RLFSTACK_0, 1

$0AE3$0DF1RLFSTACK_0+1, 1

$0AE4$1070BCFSTACK_0, 0

$0AE5$3FFFADDLW255

$0AE6$2AE0GOTOL_main_9

$0AE7$L_main_10:

$0AE7$085FMOVF_count+1, 0

$0AE8$0271SUBWFSTACK_0+1, 0

$0AE9$1D03BTFSSSTATUS, Z

$0AEA$2AEDGOTOL_main_11

$0AEB$085EMOVF_count, 0

$0AEC$0270SUBWFSTACK_0, 0

$0AED$L_main_11:

$0AED$1803BTFSCSTATUS, C

$0AEE$2AF3GOTOmechprothese_L_47

$0AEF$mechprothese_L_46:

;mechprothese.pbas,237 :: Count = 0

$0AEF$01DECLRF_count

$0AF0$01DFCLRF_count+1

;mechprothese.pbas,238 :: A=0

$0AF1$01E2CLRF_a

$0AF2$01E3CLRF_a+1

$0AF3$mechprothese_L_47:

;mechprothese.pbas,239 :: end if

$0AF3$mechprothese_L_48:

;mechprothese.pbas,240 :: goto Lus

$0AF3$290AGOTO_main_lus

;mechprothese.pbas,281 :: Manual:

$0AF4$_main_manual:

;mechprothese.pbas,283 :: Lcd8_out(4,7,"Manual")

$0AF4$3004MOVLW4

$0AF5$1683BSFSTATUS, RP0

$0AF6$00C2MOVWFFARG_Lcd8_Out

$0AF7$3007MOVLW7

$0AF8$00C3MOVWFFARG_Lcd8_Out+1

$0AF9$304DMOVLW77

$0AFA$00A0MOVWF?main_Local_Text+0

$0AFB$3061MOVLW97

$0AFC$00A1MOVWF?main_Local_Text+1

$0AFD$306EMOVLW110

$0AFE$00A2MOVWF?main_Local_Text+2

$0AFF$3075MOVLW117

$0B00$00A3MOVWF?main_Local_Text+3

$0B01$3061MOVLW97

$0B02$00A4MOVWF?main_Local_Text+4

$0B03$306CMOVLW108

$0B04$00A5MOVWF?main_Local_Text+5

$0B05$01A6CLRF?main_Local_Text+6

$0B06$30A0MOVLW?main_Local_Text

$0B07$00C4MOVWFFARG_Lcd8_Out+2

$0B08$118ABCFPCLATH, 3

$0B09$2134CALL_lcd8_out

$0B0A$158ABSFPCLATH, 3

;mechprothese.pbas,284 :: Lcd8_out(4,0,stifness) 'value of Hoek

$0B0B$3004MOVLW4

$0B0C$1683BSFSTATUS, RP0

$0B0D$00C2MOVWFFARG_Lcd8_Out

$0B0E$01C3CLRFFARG_Lcd8_Out+1, 1

$0B0F$3033MOVLW_stifness

$0B10$00C4MOVWFFARG_Lcd8_Out+2

$0B11$118ABCFPCLATH, 3

$0B12$2134CALL_lcd8_out

$0B13$158ABSFPCLATH, 3

;mechprothese.pbas,285 :: Lcd8_out(4,-3,"Stif:")

$0B14$3004MOVLW4

$0B15$1683BSFSTATUS, RP0

$0B16$00C2MOVWFFARG_Lcd8_Out

$0B17$30FDMOVLW253

$0B18$00C3MOVWFFARG_Lcd8_Out+1

$0B19$3053MOVLW83

$0B1A$00A0MOVWF?main_Local_Text+0

$0B1B$3074MOVLW116

$0B1C$00A1MOVWF?main_Local_Text+1

$0B1D$3069MOVLW105

$0B1E$00A2MOVWF?main_Local_Text+2

$0B1F$3066MOVLW102

$0B20$00A3MOVWF?main_Local_Text+3

$0B21$303AMOVLW58

$0B22$00A4MOVWF?main_Local_Text+4

$0B23$01A5CLRF?main_Local_Text+5

$0B24$30A0MOVLW?main_Local_Text

$0B25$00C4MOVWFFARG_Lcd8_Out+2

$0B26$118ABCFPCLATH, 3

$0B27$2134CALL_lcd8_out

$0B28$158ABSFPCLATH, 3

;mechprothese.pbas,286 :: Lcd8_out(4,5,"%")

$0B29$3004MOVLW4

$0B2A$1683BSFSTATUS, RP0

$0B2B$00C2MOVWFFARG_Lcd8_Out

$0B2C$3005MOVLW5

$0B2D$00C3MOVWFFARG_Lcd8_Out+1

$0B2E$3025MOVLW37

$0B2F$00A0MOVWF?main_Local_Text+0

$0B30$01A1CLRF?main_Local_Text+1

$0B31$30A0MOVLW?main_Local_Text

$0B32$00C4MOVWFFARG_Lcd8_Out+2

$0B33$118ABCFPCLATH, 3

$0B34$2134CALL_lcd8_out

$0B35$158ABSFPCLATH, 3

;mechprothese.pbas,288 :: if A>(Manual) then

$0B36$0863MOVF_a+1, 0

$0B37$0230SUBWF_manual+1, 0

$0B38$1D03BTFSSSTATUS, Z

$0B39$2B3CGOTOL_main_12

$0B3A$0862MOVF_a, 0

$0B3B$022FSUBWF_manual, 0

$0B3C$L_main_12:

$0B3C$1803BTFSCSTATUS, C

$0B3D$2B42GOTOmechprothese_L_50

$0B3E$mechprothese_L_49:

;mechprothese.pbas,290 :: A=A-10

$0B3E$300AMOVLW10

$0B3F$02E2SUBWF_a, 1

$0B40$1C03BTFSSSTATUS, C

$0B41$03E3DECF_a+1, 1

$0B42$mechprothese_L_50:

;mechprothese.pbas,292 :: end if

$0B42$mechprothese_L_51:

;mechprothese.pbas,296 :: if A<(Manual) then

$0B42$0830MOVF_manual+1, 0

$0B43$0263SUBWF_a+1, 0

$0B44$1D03BTFSSSTATUS, Z

$0B45$2B48GOTOL_main_13

$0B46$082FMOVF_manual, 0

$0B47$0262SUBWF_a, 0

$0B48$L_main_13:

$0B48$1803BTFSCSTATUS, C

$0B49$2B4EGOTOmechprothese_L_53

$0B4A$mechprothese_L_52:

;mechprothese.pbas,297 :: A=A+ 10

$0B4A$300AMOVLW10

$0B4B$07E2ADDWF_a, 1

$0B4C$1803BTFSCSTATUS, C

$0B4D$0AE3INCF_a+1, 1

$0B4E$mechprothese_L_53:

;mechprothese.pbas,299 :: end if

$0B4E$mechprothese_L_54:

;mechprothese.pbas,301 :: PWM2_change_duty(A) 'voorste spier

$0B4E$0862MOVF_a, 0

$0B4F$00ECMOVWFFARG_PWM2_Change_Duty

$0B50$118ABCFPCLATH, 3

$0B51$25DECALL_pwm2_change_duty

$0B52$158ABSFPCLATH, 3

;mechprothese.pbas,302 :: PWM1_change_duty(A)

$0B53$0862MOVF_a, 0

$0B54$00ECMOVWFFARG_PWM1_Change_Duty

$0B55$118ABCFPCLATH, 3

$0B56$2596CALL_pwm1_change_duty

$0B57$158ABSFPCLATH, 3

;mechprothese.pbas,322 :: goto Lus

$0B58$290AGOTO_main_lus

$0B59$2B59GOTO$