]> git.sur5r.net Git - cc65/blob - libsrc/cbm/c_save.s
fixed optimization bug where array index is 16-bit, e.g. arr16[i & 0x7f7f]
[cc65] / libsrc / cbm / c_save.s
1 ;
2 ; Marc 'BlackJack' Rintsch, 11.06.1999
3 ;
4 ; unsigned char __fastcall__ cbm_k_save(unsigned int start, unsigned int end);
5 ;
6
7         .include        "cbm.inc"
8
9         .export         _cbm_k_save
10         .import         popptr1
11         .importzp       ptr1, tmp1
12
13
14 _cbm_k_save:
15         sta     tmp1            ; store end address
16         stx     tmp1+1
17         jsr     popptr1         ; pop start address
18         lda     #ptr1
19         ldx     tmp1
20         ldy     tmp1+1
21         jsr     SAVE
22         ldx     #0              ; Clear high byte
23         bcs     @NotOk
24         txa
25 @NotOk: rts