sirius     25.08.20 11:02  
                               :020000040000FA
                               :100000008C142F308400800184038C18032886010F
                               :1000100086098316C0308600811283121616861B4D
                               :100020000F28861F1128861B1328861F15288E204F
                               :10003000140884006400951D212818194628692891
                               :100040000B110B1D21280B110008860400008600EF
                               :10005000840A00080102031C2928840A0008860477
                               :1000600000008600840A00080102031C33282A309D
                               :10007000860400008600061B53298E201408840085
                               :100080006400951D21281819462869280B1D46284B
                               :100090000B110008860400008600840A0008010293
                               :1000A000031C4E28840A0008860400008600840A87
                               :1000B0008E2000080102031C59282A308604000003
                               :1000C0008600140884006400951D2128181946280C
                               :1000D00069280B1D69280B110008860400008600A2
                               :1000E000840A8E2000080102031C7228840A00087A
                               :1000F000860400008600840A061B532900080102BA
                               :10010000031C7E282A308604000086001408840020
                               :100110006400951D2128181946286928990F9F28E1
                               :100120000508160203199F2803189828960A99288B
                               :10013000960316080F3995000F30161E9506950880
                               :1001400003194529150E9707031CAC289808031DB1
                               :10015000AB281830980098031918AF28DC288A01BA
                               :100160001808FE39161A01388207092922290E2992
                               :100170001D290E291D291329182913291829182981
                               :100180001329182913291D290E291D290E29222971
                               :100190000929222909290929222902308A00180E51
                               :1001A000703915048F00FF218D000F088A0AFF2285
                               :1001B0008F000C30940008008A011808FE39161AC6
                               :1001C00001388207272940292C293B292C293B2942
                               :1001D000312936293129362936293129362931293B
                               :1001E0003B292C293B292C2940292729402927292B
                               :1001F0002729402902308A00180E7039150493000F
                               :10020000FF21910013088A0AFF2293001030940006
                               :10021000080019308C0029308E00CD2819308C0050
                               :100220001A308E00CD2816308C001A308E00CD2862
                               :1002300016308C0026308E00CD2825308C002630DC
                               :100240008E00CD2825308C0029308E00CD28193025
                               :10025000900029309200FA28193090001A3092004C
                               :10026000FA28163090001A309200FA2816309000C2
                               :1002700026309200FA282530900026309200FA2885
                               :100280002530900029309200FA2864002A308C0032
                               :100290008E00900092008D008F00910093000C3032
                               :0E02A0008400940008003F308600640053295B
                               :0203FE00820774
                               :1004000000340A3414341D34273431343B34453439
                               :100410004F34583462346C34763480348A349334B4
                               :1004200000340D341A342634333440344D345A34C5
                               :100430006634733480348D349A34A634B334C03483
                               :1004400000340D341A342634333440344D345A34A5
                               :100450006634733480348D349A34A634B334C03463
                               :1004600000340A3414341D34273431343B344534D9
                               :100470004F34583462346C34763480348A34933454
                               :10048000003406340C34133419341F3425342B341F
                               :10049000313438343E3444344A34503457345D3483
                               :1004A000003402340434063408340B340D340F3471
                               :1004B000113413341534173419341B341E342034DA
                               :1004C000003402340434063408340B340D340F3451
                               :1004D000113413341534173419341B341E342034BA
                               :1004E000003406340C34133419341F3425342B34BF
                               :1004F000313438343E3444344A34503457345D3423
                               :0205FE00820772
                               :10060000003410342034303440345034603470348A
                               :1006100080349034A034B034C034D034E034F0347A
                               :1006200000340F341E342D343C344B345A34683487
                               :10063000773486349534A434B334C234D134E034BE
                               :1006400000340F341E342D343C344B345A34683467
                               :10065000773486349534A434B334C234D134E0349E
                               :10066000003410342034303440345034603470342A
                               :1006700080349034A034B034C034D034E034F0341A
                               :10068000003410342034303440345034603470340A
                               :1006900080349034A034B034C034D034E034F034FA
                               :1006A00000340F341E342D343C344B345A34683407
                               :1006B000773486349534A434B334C234D134E0343E
                               :1006C00000340F341E342D343C344B345A346834E7
                               :1006D000773486349534A434B334C234D134E0341E
                               :1006E00000341034203430344034503460347034AA
                               :1006F00080349034A034B034C034D034E034F0349A
                               :00000001FF
                               

sirius     25.08.20 11:02  - 
                               "" :)
                               

Nik        25.08.20 11:04  ,  ?

sirius     25.08.20 11:04         :)

sirius     25.08.20 11:05 	include	<p16F84.inc>
                               	include	<asinxron.inc>
                               W11	    equ	0C
                               TIME11	equ	0D
                               W12 	equ	0E
                               TIME12	equ	0F
                               W21	    equ	10
                               TIME21	equ	11
                               W22 	equ	12
                               TIME22	equ	13
                               FSRTEMP	equ	14
                               SPEED	equ	15
                               SPEEDT	equ	16
                               FAZL	equ	17
                               FAZH	equ	18
                               COUNT	equ	19
                               
                               	org 	00
                               	bsf	    0C,1	;  
                               	movlw	2F		; b'00101111'
                               	movwf	FSR
                               Clr	clrf	INDF		;
                               	decf	FSR,F
                               	btfsc	0C,1
                               	goto	Clr
                               	clrf	PORTB
                               	comf	PORTB,F		;
                               	bsf		STATUS,RP0	;
                               	movlw b'11000000'
                               	movwf	TRISB
                               	bcf	OPTION_REG, T0CS
                               	bcf	STATUS, RP0
                               	bsf	SPEEDT,4
                               
                               Wait1	btfsc	PORTB,7		;  
                               
                               		goto	Wait1
                               Wait2	btfss	PORTB,7
                               		goto	Wait2
                               Wait3	btfsc	PORTB,7
                               		goto	Wait3
                               Wait4	btfss	PORTB,7
                               		goto	Wait4
                               
                               Start	call	Calc		;  
                               		movf	FSRTEMP,W	;  
                               		movwf	FSR
                               		clrwdt
                               		btfss	SPEED,3		;   
                               		goto	Type1
                               		btfsc	FAZH,2
                               		goto	Type2
                               		goto	Type3
                               		bcf	INTCON, T0IF
                               Type1	btfss	INTCON, T0IF	;  1, 
                               .
                               		goto	Type1
                               		bcf	INTCON, T0IF
                               		movf	INDF,W		; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		incf	FSR,F
                               	m1	movf	INDF,W		;  
                               		subwf	TMR0,W
                               		btfss	STATUS, C
                               		goto	m1
                               		incf	FSR,F
                               		movf	INDF,W		; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		incf	FSR,F
                               	m2	movf	INDF,W		;  
                               		subwf	TMR0,W
                               		btfss	STATUS, C
                               		goto	m2
                               		movlw	b'00101010'	; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		btfsc	PORTB,6
                               		goto	Vsio		;  
                               		call	Calc		;  
                               		movf	FSRTEMP,W	;  
                               		movwf	FSR
                               		clrwdt
                               		btfss	SPEED,3		;   
                               		goto	Type1
                               		btfsc	FAZH,2
                               		goto	Type2
                               		goto	Type3
                               Type2	btfss	INTCON, T0IF	;  2, 
                               .
                               		goto	Type2
                               		bcf	INTCON, T0IF
                               		movf	INDF,W		; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		incf	FSR,F	
                               		;btfsc	PORTB,6		;  
                               		;goto	Vsio
                               	m3	movf	INDF,W		;  
                               		subwf	TMR0,W
                               		btfss	STATUS, C
                               		goto	m3
                               		incf	FSR,F
                               		movf	INDF,W		; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		incf	FSR,F
                               		call	Calc		;  
                               	m4	movf	INDF,W		;  
                               		subwf	TMR0,W
                               		btfss	STATUS, C
                               		goto	m4
                               		movlw	b'00101010'	; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		movf	FSRTEMP,W	;  
                               		movwf	FSR
                               		clrwdt
                               		btfss	SPEED,3		;   
                               		goto	Type1
                               		btfsc	FAZH,2
                               		goto	Type2
                               		goto	Type3
                               Type3	btfss	INTCON, T0IF	;  1, 
                               .
                               		goto	Type3
                               		bcf	INTCON, T0IF
                               		movf	INDF,W		; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		incf	FSR,F
                               		call	Calc		;  
                               	m5	movf	INDF,W		;  
                               		subwf	TMR0,W
                               		btfss	STATUS, C
                               		goto	m5
                               		incf	FSR,F
                               		movf	INDF,W		; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		incf	FSR,F
                               		btfsc	PORTB,6		;  
                               		goto	Vsio
                               	m6	movf	INDF,W		;  
                               		subwf	TMR0,W
                               		btfss	STATUS, C
                               		goto	m6
                               		movlw	b'00101010'	; 
                               		iorwf	PORTB,F
                               		nop
                               		movwf	PORTB
                               		movf	FSRTEMP,W	;  
                               		movwf	FSR
                               		clrwdt
                               		btfss	SPEED,3		;   
                               		goto	Type1
                               		btfsc	FAZH,2
                               		goto	Type2
                               		goto	Type3		;     
                               
                               
                               Calc	incfsz	COUNT,F		; 
                                  
                               		goto	Endsp
                               		movf	PORTA,W		; 
                               		subwf	SPEEDT,W
                               		btfsc	STATUS,Z
                               		goto	Endsp
                               		btfsc	STATUS,C
                               		goto	Reduc
                               Increas	incf	SPEEDT,F
                               		goto	Endsel
                               Reduc	decf	SPEEDT,F
                               Endsel	movf	SPEEDT,W	; 
                               		andlw	b'00001111'
                               		movwf	SPEED
                               		movlw	b'00001111'
                               		btfss	SPEEDT,4
                               		xorwf	SPEED,F
                               Endsp	movf	SPEED,F
                               		btfsc	STATUS,Z	;  
                               		goto	Stop
                               		swapf	SPEED,W		
                               		addwf	FAZL,F		;   
                               		btfss	STATUS,C
                               		goto	Endfaz	
                               		movf	FAZH,F
                               		btfss	STATUS,Z
                               		goto	Decr
                               		movlw	d'24'
                               		movwf	FAZH
                               Decr	decf	FAZH,F
                               Endfaz	btfsc	COUNT,0		; 
                                
                               		goto	Parity
                               		goto	Noparit
                               Parity	clrf	PCLATH		;  
                                
                               		movf	FAZH,W
                               		andlw	b'11111110'
                               		btfsc	SPEEDT,4
                               		iorlw	b'00000001'
                               		addwf	PCL,F
                               		goto	P0
                               		goto	P5
                               		goto	P1
                               		goto	P4
                               		goto	P1
                               		goto	P4
                               		goto	P2
                               		goto	P3
                               		goto	P2
                               		goto	P3
                               		goto	P3
                               		goto	P2
                               		goto	P3
                               		goto	P2
                               		goto	P4
                               		goto	P1
                               		goto	P4
                               		goto	P1
                               		goto	P5
                               		goto	P0
                               		goto	P5
                               		goto	P0
                               		goto	P0
                               		goto	P5
                               ;    
                               Pcalc	movlw	02
                               	movwf	PCLATH
                               	swapf	FAZH,W
                               	andlw	b'01110000'
                               	iorwf	SPEED,W
                               	movwf	TIME12
                               	call	Tabl1
                               	movwf	TIME11
                               	movf	TIME12,W
                               	incf	PCLATH,F
                               	call	Tabl2
                               	movwf	TIME12		
                               	movlw	0C		;  
                               
                               	movwf	FSRTEMP
                               	return			;    
                               Noparit	clrf	PCLATH		;  
                                
                               	movf	FAZH,W
                               	andlw	b'11111110'
                               	btfsc	SPEEDT,4
                               	iorlw	b'00000001'
                               	addwf	PCL,F
                               	goto	N0
                               	goto	N5
                               	goto	N1
                               	goto	N4
                               	goto	N1
                               	goto	N4
                               	goto	N2
                               	goto	N3
                               	goto	N2
                               	goto	N3
                               	goto	N3
                               	goto	N2
                               	goto	N3
                               	goto	N2
                               	goto	N4
                               	goto	N1
                               	goto	N4
                               	goto	N1
                               	goto	N5
                               	goto	N0
                               	goto	N5
                               	goto	N0
                               	goto	N0
                               	goto	N5
                               
                               	;    
                               Npcalc	movlw	02
                               	movwf	PCLATH
                               	swapf	FAZH,W
                               	andlw	b'01110000'
                               	iorwf	SPEED,W
                               	movwf	TIME22
                               	call	Tabl1
                               	movwf	TIME21
                               	movf	TIME22,W
                               	incf	PCLATH,F
                               	call	Tabl2
                               	movwf	TIME22	
                               	movlw	10		;  
                               
                               	movwf	FSRTEMP
                               	return			;    
                               P0	movlw	b'00011001'	;  
                               
                               	movwf	W11		; 
                               	movlw	b'00101001'
                               	movwf	W12
                               	goto	Pcalc	
                               P1	movlw	b'00011001'
                               	movwf	W11
                               	movlw	b'00011010'
                               	movwf	W12
                               	goto	Pcalc
                               P2	movlw	b'00010110'
                               	movwf	W11
                               	movlw	b'00011010'
                               	movwf	W12
                               	goto	Pcalc
                               P3	movlw	b'00010110'
                               	movwf	W11
                               	movlw	b'00100110'
                               	movwf	W12
                               	goto	Pcalc
                               P4	movlw	b'00100101'
                               	movwf	W11
                               	movlw	b'00100110'
                               	movwf	W12
                               	goto	Pcalc
                               P5	movlw	b'00100101'
                               	movwf	W11
                               	movlw	b'00101001'
                               	movwf	W12
                               	goto	Pcalc
                               N0	movlw	b'00011001'	;  
                               
                               	movwf	W21		; 
                               	movlw	b'00101001'
                               	movwf	W22
                               	goto	Npcalc	
                               N1	movlw	b'00011001'
                               	movwf	W21
                               	movlw	b'00011010'
                               	movwf	W22
                               	goto	Npcalc
                               N2	movlw	b'00010110'
                               	movwf	W21
                               	movlw	b'00011010'
                               	movwf	W22
                               	goto	Npcalc
                               N3	movlw	b'00010110'
                               	movwf	W21
                               	movlw	b'00100110'
                               	movwf	W22
                               	goto	Npcalc
                               N4	movlw	b'00100101'
                               	movwf	W21
                               	movlw	b'00100110'
                               	movwf	W22
                               	goto	Npcalc
                               N5	movlw	b'00100101'
                               	movwf	W21
                               	movlw	b'00101001'
                               	movwf	W22
                               	goto	Npcalc
                               Stop	clrwdt 			;
                               	movlw	b'00101010'
                               	movwf	W11
                               	movwf	W12
                               	movwf	W21
                               	movwf	W22
                               	movwf	TIME11
                               	movwf	TIME12
                               	movwf	TIME21
                               	movwf	TIME22
                               	movlw	0C
                               	movwf	FSR
                               	movwf	FSRTEMP
                               	return
                               Vsio	movlw	b'00111111'
                               	movwf	PORTB
                               	clrwdt
                               	goto	Vsio	
                               	end
                               

sirius     25.08.20 11:07 
                               	org	1FF	;first commutation
                               Tabl1	addwf	PCL,F
                                       retlw   d'0'
                                       retlw   d'10'
                                       retlw   d'20'
                                       retlw   d'29'
                                       retlw   d'39'
                                       retlw   d'49'
                                       retlw   d'59'
                                       retlw   d'69'
                                       retlw   d'79'
                                       retlw   d'88'
                                       retlw   d'98'
                                       retlw   d'108'
                                       retlw   d'118'
                                       retlw   d'128'
                                       retlw   d'138'
                                       retlw   d'147'
                                       retlw   d'0'
                                       retlw   d'13'
                                       retlw   d'26'
                                       retlw   d'38'
                                       retlw   d'51'
                                       retlw   d'64'
                                       retlw   d'77'
                                       retlw   d'90'
                                       retlw   d'102'
                                       retlw   d'115'
                                       retlw   d'128'
                                       retlw   d'141'
                                       retlw   d'154'
                                       retlw   d'166'
                                       retlw   d'179'
                                       retlw   d'192'
                                       retlw   d'0'
                                       retlw   d'13'
                                       retlw   d'26'
                                       retlw   d'38'
                                       retlw   d'51'
                                       retlw   d'64'
                                       retlw   d'77'
                                       retlw   d'90'
                                       retlw   d'102'
                                       retlw   d'115'
                                       retlw   d'128'
                                       retlw   d'141'
                                       retlw   d'154'
                                       retlw   d'166'
                                       retlw   d'179'
                                       retlw   d'192'
                                       retlw   d'0'
                                       retlw   d'10'
                                       retlw   d'20'
                                       retlw   d'29'
                                       retlw   d'39'
                                       retlw   d'49'
                                       retlw   d'59'
                                       retlw   d'69'
                                       retlw   d'79'
                                       retlw   d'88'
                                       retlw   d'98'
                                       retlw   d'108'
                                       retlw   d'118'
                                       retlw   d'128'
                                       retlw   d'138'
                                       retlw   d'147'
                                       retlw   d'0'
                                       retlw   d'6'
                                       retlw   d'12'
                                       retlw   d'19'
                                       retlw   d'25'
                                       retlw   d'31'
                                       retlw   d'37'
                                       retlw   d'43'
                                       retlw   d'49'
                                       retlw   d'56'
                                       retlw   d'62'
                                       retlw   d'68'
                                       retlw   d'74'
                                       retlw   d'80'
                                       retlw   d'87'
                                       retlw   d'93'
                                       retlw   d'0'
                                       retlw   d'2'
                                       retlw   d'4'
                                       retlw   d'6'
                                       retlw   d'8'
                                       retlw   d'11'
                                       retlw   d'13'
                                       retlw   d'15'
                                       retlw   d'17'
                                       retlw   d'19'
                                       retlw   d'21'
                                       retlw   d'23'
                                       retlw   d'25'
                                       retlw   d'27'
                                       retlw   d'30'
                                       retlw   d'32'
                                       retlw   d'0'
                                       retlw   d'2'
                                       retlw   d'4'
                                       retlw   d'6'
                                       retlw   d'8'
                                       retlw   d'11'
                                       retlw   d'13'
                                       retlw   d'15'
                                       retlw   d'17'
                                       retlw   d'19'
                                       retlw   d'21'
                                       retlw   d'23'
                                       retlw   d'25'
                                       retlw   d'27'
                                       retlw   d'30'
                                       retlw   d'32'
                                       retlw   d'0'
                                       retlw   d'6'
                                       retlw   d'12'
                                       retlw   d'19'
                                       retlw   d'25'
                                       retlw   d'31'
                                       retlw   d'37'
                                       retlw   d'43'
                                       retlw   d'49'
                                       retlw   d'56'
                                       retlw   d'62'
                                       retlw   d'68'
                                       retlw   d'74'
                                       retlw   d'80'
                                       retlw   d'87'
                                       retlw   d'93'
                               	org	2FF	;second commutation
                               Tabl2	addwf	PCL,F
                                       retlw   d'0'
                                       retlw   d'16'
                                       retlw   d'32'
                                       retlw   d'48'
                                       retlw   d'64'
                                       retlw   d'80'
                                       retlw   d'96'
                                       retlw   d'112'
                                       retlw   d'128'
                                       retlw   d'144'
                                       retlw   d'160'
                                       retlw   d'176'
                                       retlw   d'192'
                                       retlw   d'208'
                                       retlw   d'224'
                                       retlw   d'240'
                                       retlw   d'0'
                                       retlw   d'15'
                                       retlw   d'30'
                                       retlw   d'45'
                                       retlw   d'60'
                                       retlw   d'75'
                                       retlw   d'90'
                                       retlw   d'104'
                                       retlw   d'119'
                                       retlw   d'134'
                                       retlw   d'149'
                                       retlw   d'164'
                                       retlw   d'179'
                                       retlw   d'194'
                                       retlw   d'209'
                                       retlw   d'224'
                                       retlw   d'0'
                                       retlw   d'15'
                                       retlw   d'30'
                                       retlw   d'45'
                                       retlw   d'60'
                                       retlw   d'75'
                                       retlw   d'90'
                                       retlw   d'104'
                                       retlw   d'119'
                                       retlw   d'134'
                                       retlw   d'149'
                                       retlw   d'164'
                                       retlw   d'179'
                                       retlw   d'194'
                                       retlw   d'209'
                                       retlw   d'224'
                                       retlw   d'0'
                                       retlw   d'16'
                                       retlw   d'32'
                                       retlw   d'48'
                                       retlw   d'64'
                                       retlw   d'80'
                                       retlw   d'96'
                                       retlw   d'112'
                                       retlw   d'128'
                                       retlw   d'144'
                                       retlw   d'160'
                                       retlw   d'176'
                                       retlw   d'192'
                                       retlw   d'208'
                                       retlw   d'224'
                                       retlw   d'240'
                                       retlw   d'0'
                                       retlw   d'16'
                                       retlw   d'32'
                                       retlw   d'48'
                                       retlw   d'64'
                                       retlw   d'80'
                                       retlw   d'96'
                                       retlw   d'112'
                                       retlw   d'128'
                                       retlw   d'144'
                                       retlw   d'160'
                                       retlw   d'176'
                                       retlw   d'192'
                                       retlw   d'208'
                                       retlw   d'224'
                                       retlw   d'240'
                                       retlw   d'0'
                                       retlw   d'15'
                                       retlw   d'30'
                                       retlw   d'45'
                                       retlw   d'60'
                                       retlw   d'75'
                                       retlw   d'90'
                                       retlw   d'104'
                                       retlw   d'119'
                                       retlw   d'134'
                                       retlw   d'149'
                                       retlw   d'164'
                                       retlw   d'179'
                                       retlw   d'194'
                                       retlw   d'209'
                                       retlw   d'224'
                                       retlw   d'0'
                                       retlw   d'15'
                                       retlw   d'30'
                                       retlw   d'45'
                                       retlw   d'60'
                                       retlw   d'75'
                                       retlw   d'90'
                                       retlw   d'104'
                                       retlw   d'119'
                                       retlw   d'134'
                                       retlw   d'149'
                                       retlw   d'164'
                                       retlw   d'179'
                                       retlw   d'194'
                                       retlw   d'209'
                                       retlw   d'224'
                                       retlw   d'0'
                                       retlw   d'16'
                                       retlw   d'32'
                                       retlw   d'48'
                                       retlw   d'64'
                                       retlw   d'80'
                                       retlw   d'96'
                                       retlw   d'112'
                                       retlw   d'128'
                                       retlw   d'144'
                                       retlw   d'160'
                                       retlw   d'176'
                                       retlw   d'192'
                                       retlw   d'208'
                                       retlw   d'224'
                                       retlw   d'240'
                               
                               
                                 -   "asinxron.inc" -  
                                 