📄 paldemo.lst
字号:
$2C24 $EF1A F016 GOTO $+7
$2C28 $5004 MOVF STACK_4, W, 0
$2C2A $2608 ADDWF STACK_8, F, 0
$2C2C $5005 MOVF STACK_5, W, 0
$2C2E $B0D8 BTFSC STATUS, C, 0
$2C30 $3C05 INCFSZ STACK_5, W, 0
$2C32 $2609 ADDWF STACK_9, F, 0
$2C34 $0000 NOP
$2C36 $0012 RETURN
$257A $ _PAL_setPixel:
;PAL_library.c,682 :: void PAL_setPixel(char x, char y, unsigned char mode)
;PAL_library.c,690 :: if(x < 0) return ;
$257A $0E00 MOVLW 0
$257C $0108 MOVLB 8
$257E $5DC1 SUBWF FARG_PAL_setPixel+0, 0, 1
$2580 $A0D8 BTFSS STATUS, C, 0
$2582 $0012 RETURN
$2584 $ L_PAL_setPixel_27:
;PAL_library.c,691 :: if(y < 0) return ;
$2584 $0E00 MOVLW 0
$2586 $5DC2 SUBWF FARG_PAL_setPixel+1, 0, 1
$2588 $A0D8 BTFSS STATUS, C, 0
$258A $0012 RETURN
$258C $ L_PAL_setPixel_28:
;PAL_library.c,692 :: if(x >= PAL_X) return ;
$258C $0E80 MOVLW 128
$258E $5DC1 SUBWF FARG_PAL_setPixel+0, 0, 1
$2590 $B0D8 BTFSC STATUS, C, 0
$2592 $0012 RETURN
$2594 $ L_PAL_setPixel_29:
;PAL_library.c,693 :: if(y >= PAL_y) return ;
$2594 $5124 MOVF _PAL_y, 0, 1
$2596 $5DC2 SUBWF FARG_PAL_setPixel+1, 0, 1
$2598 $B0D8 BTFSC STATUS, C, 0
$259A $0012 RETURN
$259C $ L_PAL_setPixel_30:
;PAL_library.c,695 :: ptr = PAL_screen + (((y << 7) + x) >> 3) ; // points to byte in screen map
$259C $0E07 MOVLW 7
$259E $6E02 MOVWF STACK_2, 0
$25A0 $C8C2 F000 MOVFF FARG_PAL_setPixel+1, STACK_0
$25A4 $0E00 MOVLW 0
$25A6 $6E01 MOVWF STACK_0+1, 0
$25A8 $5002 MOVF STACK_2, 0, 0
$25AA $ L_PAL_setPixel_82:
$25AA $0108 MOVLB 8
$25AC $E005 BZ L_PAL_setPixel_83
$25AE $3600 RLCF STACK_0, 1, 0
$25B0 $9000 BCF STACK_0, 0, 0
$25B2 $3601 RLCF STACK_0+1, 1, 0
$25B4 $0FFF ADDLW 255
$25B6 $D7F9 BRA L_PAL_setPixel_82
$25B8 $ L_PAL_setPixel_83:
$25B8 $0108 MOVLB 8
$25BA $51C1 MOVF FARG_PAL_setPixel+0, 0, 1
$25BC $2400 ADDWF STACK_0, 0, 0
$25BE $6E03 MOVWF STACK_3, 0
$25C0 $0E00 MOVLW 0
$25C2 $2001 ADDWFC STACK_0+1, 0, 0
$25C4 $6E04 MOVWF STACK_3+1, 0
$25C6 $C003 F000 MOVFF STACK_3, STACK_0
$25CA $C004 F001 MOVFF STACK_3+1, STACK_0+1
$25CE $3201 RRCF STACK_0+1, 1, 0
$25D0 $3200 RRCF STACK_0, 1, 0
$25D2 $9E01 BCF STACK_0+1, 7, 0
$25D4 $3201 RRCF STACK_0+1, 1, 0
$25D6 $3200 RRCF STACK_0, 1, 0
$25D8 $9E01 BCF STACK_0+1, 7, 0
$25DA $3201 RRCF STACK_0+1, 1, 0
$25DC $3200 RRCF STACK_0, 1, 0
$25DE $9E01 BCF STACK_0+1, 7, 0
$25E0 $0E1C MOVLW _PAL_screen
$25E2 $2400 ADDWF STACK_0, 0, 0
$25E4 $6FC4 MOVWF PAL_setPixel_ptr_L0, 1
$25E6 $0E00 MOVLW @_PAL_screen
$25E8 $2001 ADDWFC STACK_0+1, 0, 0
$25EA $6FC5 MOVWF PAL_setPixel_ptr_L0+1, 1
;PAL_library.c,696 :: mask = 1 << (x & 7) ; // pixel bit mask
$25EC $0E07 MOVLW 7
$25EE $15C1 ANDWF FARG_PAL_setPixel+0, 0, 1
$25F0 $6E00 MOVWF STACK_0, 0
$25F2 $0E01 MOVLW 1
$25F4 $6FC6 MOVWF PAL_setPixel_mask_L0, 1
$25F6 $5000 MOVF STACK_0, 0, 0
$25F8 $ L_PAL_setPixel_84:
$25F8 $E004 BZ L_PAL_setPixel_85
$25FA $37C6 RLCF PAL_setPixel_mask_L0, 1, 1
$25FC $91C6 BCF PAL_setPixel_mask_L0, 0, 1
$25FE $0FFF ADDLW 255
$2600 $D7FB BRA L_PAL_setPixel_84
$2602 $ L_PAL_setPixel_85:
;PAL_library.c,698 :: switch(mode)
$2602 $0108 MOVLB 8
$2604 $D02F BRA L_PAL_setPixel_31
;PAL_library.c,700 :: case PAL_COLOR_BLACK:
$2606 $ L_PAL_setPixel_33:
;PAL_library.c,701 :: *ptr &= ~mask ; // clear bit
$2606 $1DC6 COMF PAL_setPixel_mask_L0, 0, 1
$2608 $6E02 MOVWF STACK_2, 0
$260A $C8C4 FFE9 MOVFF PAL_setPixel_ptr_L0, FSR0L
$260E $C8C5 FFEA MOVFF PAL_setPixel_ptr_L0+1, FSR0H
$2612 $CFEE F000 MOVFF POSTINC0, STACK_0
$2616 $5002 MOVF STACK_2, 0, 0
$2618 $1600 ANDWF STACK_0, 1, 0
$261A $C8C4 FFE1 MOVFF PAL_setPixel_ptr_L0, FSR1L
$261E $C8C5 FFE2 MOVFF PAL_setPixel_ptr_L0+1, FSR1H
$2622 $C000 FFE6 MOVFF STACK_0, POSTINC1
;PAL_library.c,702 :: break ;
$2626 $D026 BRA L_PAL_setPixel_32
;PAL_library.c,703 :: case PAL_COLOR_WHITE: // set bit
$2628 $ L_PAL_setPixel_34:
;PAL_library.c,704 :: *ptr |= mask ;
$2628 $C8C4 FFE9 MOVFF PAL_setPixel_ptr_L0, FSR0L
$262C $C8C5 FFEA MOVFF PAL_setPixel_ptr_L0+1, FSR0H
$2630 $CFEE F000 MOVFF POSTINC0, STACK_0
$2634 $51C6 MOVF PAL_setPixel_mask_L0, 0, 1
$2636 $1200 IORWF STACK_0, 1, 0
$2638 $C8C4 FFE1 MOVFF PAL_setPixel_ptr_L0, FSR1L
$263C $C8C5 FFE2 MOVFF PAL_setPixel_ptr_L0+1, FSR1H
$2640 $C000 FFE6 MOVFF STACK_0, POSTINC1
;PAL_library.c,705 :: break ;
$2644 $D017 BRA L_PAL_setPixel_32
;PAL_library.c,706 :: default:
$2646 $ L_PAL_setPixel_35:
;PAL_library.c,707 :: *ptr ^= mask ; // toggle bit
$2646 $C8C4 FFE9 MOVFF PAL_setPixel_ptr_L0, FSR0L
$264A $C8C5 FFEA MOVFF PAL_setPixel_ptr_L0+1, FSR0H
$264E $CFEE F000 MOVFF POSTINC0, STACK_0
$2652 $51C6 MOVF PAL_setPixel_mask_L0, 0, 1
$2654 $1A00 XORWF STACK_0, 1, 0
$2656 $C8C4 FFE1 MOVFF PAL_setPixel_ptr_L0, FSR1L
$265A $C8C5 FFE2 MOVFF PAL_setPixel_ptr_L0+1, FSR1H
$265E $C000 FFE6 MOVFF STACK_0, POSTINC1
;PAL_library.c,708 :: break ;
$2662 $D008 BRA L_PAL_setPixel_32
;PAL_library.c,709 :: }
$2664 $ L_PAL_setPixel_31:
$2664 $0108 MOVLB 8
$2666 $51C3 MOVF FARG_PAL_setPixel+2, 0, 1
$2668 $0A00 XORLW 0
$266A $E0CD BZ L_PAL_setPixel_33
$266C $51C3 MOVF FARG_PAL_setPixel+2, 0, 1
$266E $0A01 XORLW 1
$2670 $E0DB BZ L_PAL_setPixel_34
$2672 $D7E9 BRA L_PAL_setPixel_35
$2674 $ L_PAL_setPixel_32:
;PAL_library.c,710 :: }
$2674 $0012 RETURN
$2D78 $ _Div_16x16_U:
$2D78 $0100 MOVLB 0
$2D7A $6A08 CLRF STACK_8, 0
$2D7C $6A09 CLRF STACK_9, 0
$2D7E $0E10 MOVLW 16
$2D80 $6E0C MOVWF STACK_12, 0
$2D82 $3401 RLCF STACK_1, W, 0
$2D84 $3608 RLCF STACK_8, F, 0
$2D86 $3609 RLCF STACK_9, F, 0
$2D88 $5004 MOVF STACK_4, W, 0
$2D8A $5E08 SUBWF STACK_8, F, 0
$2D8C $5005 MOVF STACK_5, W, 0
$2D8E $A0D8 BTFSS STATUS, C, 0
$2D90 $3C05 INCFSZ STACK_5, W, 0
$2D92 $5E09 SUBWF STACK_9, F, 0
$2D94 $B0D8 BTFSC STATUS, C, 0
$2D96 $EFD4 F016 GOTO $+8
$2D9A $5004 MOVF STACK_4, W, 0
$2D9C $2608 ADDWF STACK_8, F, 0
$2D9E $5005 MOVF STACK_5, W, 0
$2DA0 $B0D8 BTFSC STATUS, C, 0
$2DA2 $3C05 INCFSZ STACK_5, W, 0
$2DA4 $2609 ADDWF STACK_9, F, 0
$2DA6 $90D8 BCF STATUS, C, 0
$2DA8 $3600 RLCF STACK_0, F, 0
$2DAA $3601 RLCF STACK_1, F, 0
$2DAC $2E0C DECFSZ STACK_12, F, 0
$2DAE $EFC1 F016 GOTO $-21
$2DB2 $0012 RETURN
$1C14 $ _SDIV3232L:
$1C14 $0100 MOVLB 0
$1C16 $5004 MOVF STACK_4, W, 0
$1C18 $5E08 SUBWF STACK_8, F, 0
$1C1A $5005 MOVF STACK_5, W, 0
$1C1C $A0D8 BTFSS STATUS, C, 0
$1C1E $3C05 INCFSZ STACK_5, W, 0
$1C20 $5E09 SUBWF STACK_9, F, 0
$1C22 $5006 MOVF STACK_6, W, 0
$1C24 $A0D8 BTFSS STATUS, C, 0
$1C26 $3C06 INCFSZ STACK_6, W, 0
$1C28 $5E0A SUBWF STACK_10, F, 0
$1C2A $5007 MOVF STACK_7, W, 0
$1C2C $A0D8 BTFSS STATUS, C, 0
$1C2E $3C07 INCFSZ STACK_7, W, 0
$1C30 $5E0B SUBWF STACK_11, F, 0
$1C32 $3603 RLCF STACK_3, F, 0
$1C34 $0E07 MOVLW 7
$1C36 $6E0C MOVWF STACK_12, 0
$1C38 $ LOOPS3232A:
$1C38 $3403 RLCF STACK_3, W, 0
$1C3A $3608 RLCF STACK_8, F, 0
$1C3C $3609 RLCF STACK_9, F, 0
$1C3E $360A RLCF STACK_10, F, 0
$1C40 $360B RLCF STACK_11, F, 0
$1C42 $5004 MOVF STACK_4, W, 0
$1C44 $A003 BTFSS STACK_3, 0, 0
$1C46 $EF34 F00E GOTO SADD22LA
$1C4A $5E08 SUBWF STACK_8, F, 0
$1C4C $5005 MOVF STACK_5, W, 0
$1C4E $A0D8 BTFSS STATUS, C, 0
$1C50 $3C05 INCFSZ STACK_5, W, 0
$1C52 $5E09 SUBWF STACK_9, F, 0
$1C54 $5006 MOVF STACK_6, W, 0
$1C56 $A0D8 BTFSS STATUS, C, 0
$1C58 $3C06 INCFSZ STACK_6, W, 0
$1C5A $5E0A SUBWF STACK_10, F, 0
$1C5C $5007 MOVF STACK_7, W, 0
$1C5E $A0D8 BTFSS STATUS, C, 0
$1C60 $3C07 INCFSZ STACK_7, W, 0
$1C62 $5E0B SUBWF STACK_11, F, 0
$1C64 $EF41 F00E GOTO SOK22LA
$1C68 $ SADD22LA:
$1C68 $2608 ADDWF STACK_8, F, 0
$1C6A $5005 MOVF STACK_5, W, 0
$1C6C $B0D8 BTFSC STATUS, C, 0
$1C6E $3C05 INCFSZ STACK_5, W, 0
$1C70 $2609 ADDWF STACK_9, F, 0
$1C72 $5006 MOVF STACK_6, W, 0
$1C74 $B0D8 BTFSC STATUS, C, 0
$1C76 $3C06 INCFSZ STACK_6, W, 0
$1C78 $260A ADDWF STACK_10, F, 0
$1C7A $5007 MOVF STACK_7, W, 0
$1C7C $B0D8 BTFSC STATUS, C, 0
$1C7E $3C07 INCFSZ STACK_7, W, 0
$1C80 $260B ADDWF STACK_11, F, 0
$1C82 $ SOK22LA:
$1C82 $3603 RLCF STACK_3, F, 0
$1C84 $2E0C DECFSZ STACK_12, F, 0
$1C86 $EF1C F00E GOTO LOOPS3232A
$1C8A $3402 RLCF STACK_2, W, 0
$1C8C $3608 RLCF STACK_8, F, 0
$1C8E $3609 RLCF STACK_9, F, 0
$1C90 $360A RLCF STACK_10, F, 0
$1C92 $360B RLCF STACK_11, F, 0
$1C94 $5004 MOVF STACK_4, W, 0
$1C96 $A003 BTFSS STACK_3, 0, 0
$1C98 $EF5D F00E GOTO SADD22L8
$1C9C $5E08 SUBWF STACK_8, F, 0
$1C9E $5005 MOVF STACK_5, W, 0
$1CA0 $A0D8 BTFSS STATUS, C, 0
$1CA2 $3C05 INCFSZ STACK_5, W, 0
$1CA4 $5E09 SUBWF STACK_9, F, 0
$1CA6 $5006 MOVF STACK_6, W, 0
$1CA8 $A0D8 BTFSS STATUS, C, 0
$1CAA $3C06 INCFSZ STACK_6, W, 0
$1CAC $5E0A SUBWF STACK_10, F, 0
$1CAE $5007 MOVF STACK_7, W, 0
$1CB0 $A0D8 BTFSS STATUS, C, 0
$1CB2 $3C07 INCFSZ STACK_7, W, 0
$1CB4 $5E0B SUBWF STACK_11, F, 0
$1CB6 $EF6A F00E GOTO SOK22L8
$1CBA $ SADD22L8:
$1CBA $2608 ADDWF STACK_8, F, 0
$1CBC $5005 MOVF STACK_5, W, 0
$1CBE $B0D8 BTFSC STATUS, C, 0
$1CC0 $3C05 INCFSZ STACK_5, W, 0
$1CC2 $2609 ADDWF STACK_9, F, 0
$1CC4 $5006 MOVF STACK_6, W, 0
$1CC6 $B0D8 BTFSC STATUS, C, 0
$1CC8 $3C06 INCFSZ STACK_6, W, 0
$1CCA $260A ADDWF STACK_10, F, 0
$1CCC $5007 MOVF STACK_7, W, 0
$1CCE $B0D8 BTFSC STATUS, C, 0
$1CD0 $3C07 INCFSZ STACK_7, W, 0
$1CD2 $260B ADDWF STACK_11, F, 0
$1CD4 $ SOK22L8:
$1CD4 $3602 RLCF STACK_2, F, 0
$1CD6 $0E07 MOVLW 7
$1CD8 $6E0C MOVWF STACK_12, 0
$1CDA $ LOOPS3232B:
$1CDA $3402 RLCF STACK_2, W, 0
$1CDC $3608 RLCF STACK_8, F, 0
$1CDE $3609 RLCF STACK_9, F, 0
$1CE0 $360A RLCF STACK_10, F, 0
$1CE2 $360B RLCF STACK_11, F, 0
$1CE4 $5004 MOVF STACK_4, W, 0
$1CE6 $A002 BTFSS STACK_2, 0, 0
$1CE8 $EF85 F00E GOTO SADD22LB
$1CEC $5E08 SUBWF STACK_8, F, 0
$1CEE $5005 MOVF STACK_5, W, 0
$1CF0 $A0D8 BTFSS STATUS, C, 0
$1CF2 $3C05 INCFSZ STACK_5, W, 0
$1CF4 $5E09 SUBWF STACK_9, F, 0
$1CF6 $5006 MOVF STACK_6, W, 0
$1CF8 $A0D8 BTFSS STATUS, C, 0
$1CFA $3C06 INCFSZ STACK_6, W, 0
$1CFC $5E0A SUBWF STACK_10, F, 0
$1CFE $5007 MOVF STACK_7, W, 0
$1D00 $A0D8 BTFSS STATUS, C, 0
$1D02 $3C07 INCFSZ STACK_7, W, 0
$1D04 $5E0B SUBWF STACK_11, F, 0
$1D06 $EF92 F00E GOTO SOK22LB
$1D0A $ SADD22LB:
$1D0A $2608 ADDWF STACK_8, F, 0
$1D0C $5005 MOVF STACK_5, W, 0
$1D0E $B0D8 BTFSC STATUS, C, 0
$1D10 $3C05 INCFSZ STACK_5, W, 0
$1D12 $2609 ADDWF STACK_9, F, 0
$1D14 $5006 MOVF STACK_6, W, 0
$1D16 $B0D8 BTFSC STATUS, C, 0
$1D18 $3C06 INCFSZ STACK_6, W, 0
$1D1A $260A ADDWF STACK_10, F, 0
$1D1C $5007 MOVF STACK_7, W, 0
$1D1E $B0D8 BTFSC STATUS, C, 0
$1D20 $3C07 INCFSZ STACK_7, W, 0
$1D22 $260B ADDWF STACK_11, F, 0
$1D24 $ SOK22LB:
$1D24 $3602 RLCF STACK_2, F, 0
$1D26 $2E0C DECFSZ STACK_12, F, 0
$1D28 $EF6D F00E GOTO LOOPS3232B
$1D2C $3401 RLCF STACK_1, W, 0
$1D2E $3608 RLCF STACK_8, F, 0
$1D30 $3609 RLCF STACK_9, F, 0
$1D32 $360A RLCF STACK_10, F, 0
$1D34 $360B RLCF STACK_11, F, 0
$1D36 $5004 MOVF STACK_4, W, 0
$1D38 $A002 BTFSS STACK_2, 0, 0
$1D3A $EFAE F00E GOTO SADD22L16
$1D3E $5E08 SUBWF STACK_8, F, 0
$1D40 $5005 MOVF STACK_5, W, 0
$1D42 $A0D8 BTFSS STATUS, C, 0
$1D44 $3C05 INCFSZ STACK_5, W, 0
$1D46 $5E09 SUBWF STACK_9, F, 0
$1D48 $5006 MOVF STACK_6, W, 0
$1D4A $A0D8 BTFSS STATUS, C, 0
$1D4C $3C06 INCFSZ STACK_6, W, 0
$1D4E $5E0A SUBWF STACK_10, F, 0
$1D50 $5007 MOVF STACK_7, W, 0
$1D52 $A0D8 BTFSS STATUS, C, 0
$1D54 $3C07 INCFSZ STACK_7, W, 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -