skimask, happy birthday.
I created a new code:
There was no lst created but a mac, asm and hex.Code:Zahl VAR WORD DEFINE OSC 20 WHILE Zahl < 60000 Zahl = Zahl + 1 WEND
mac:
asm:Code:NOLIST LABEL?L macro Label RST?RP ifdef PM_USED LALL Label XALL else Label endif endm ADD?WCW macro Win, Cin, Wout if (Wout == Win) if (Cin == 1) CHK?RP Wout incf Wout, F btfsc STATUS, Z incf Wout + 1, F else movlw low (Cin) CHK?RP Wout addwf Wout, F if (((Cin) >> 8) == 0) btfsc STATUS, C incf Wout + 1, F else movlw (Cin) >> 8 btfsc STATUS, C addlw 1 addwf Wout + 1, F endif endif else movlw low (Cin) CHK?RP Win addwf Win, W MOVE?AB Wout if (((Cin) >> 8) == 0) MOVE?BA Win + 1 btfsc STATUS, C addlw 1 MOVE?AB Wout + 1 else movlw (Cin) >> 8 btfsc STATUS, C addlw 1 CHK?RP Win addwf Win + 1, W MOVE?AB Wout + 1 endif endif endm CMPGE?WCL macro Win, Cin, Label MOVE?WW Win, R0 MOVE?CB (Cin) >> 8, R1 + 1 MOVE?CA low (Cin) L?CALL CMPGE BIT?GOTO 0, STATUS, Z, Label endm CMPGE_USED = 1 GOTO?L macro Label L?GOTO Label endm LIST
How do you filter out the information needed?Code:PM_USED EQU 1 INCLUDE "16F628A.INC" ; Define statements. #define OSC 20 RAM_START EQU 00020h RAM_END EQU 0014Fh RAM_BANKS EQU 00003h BANK0_START EQU 00020h BANK0_END EQU 0007Fh BANK1_START EQU 000A0h BANK1_END EQU 000EFh BANK2_START EQU 00120h BANK2_END EQU 0014Fh EEPROM_START EQU 02100h EEPROM_END EQU 0217Fh R0 EQU RAM_START + 000h R1 EQU RAM_START + 002h R2 EQU RAM_START + 004h R3 EQU RAM_START + 006h R4 EQU RAM_START + 008h R5 EQU RAM_START + 00Ah R6 EQU RAM_START + 00Ch R7 EQU RAM_START + 00Eh R8 EQU RAM_START + 010h FLAGS EQU RAM_START + 012h GOP EQU RAM_START + 013h RM1 EQU RAM_START + 014h RM2 EQU RAM_START + 015h RR1 EQU RAM_START + 016h RR2 EQU RAM_START + 017h _Zahl EQU RAM_START + 018h _PORTL EQU PORTB _PORTH EQU PORTA _TRISL EQU TRISB _TRISH EQU TRISA INCLUDE "KKK.MAC" INCLUDE "PBPPIC14.LIB" LABEL?L L00001 CMPGE?WCL _Zahl, 0EA60h, L00002 ADD?WCW _Zahl, 001h, _Zahl GOTO?L L00001 LABEL?L L00002 END





Bookmarks