mirror of
https://github.com/cc65/cc65.git
synced 2025-02-02 15:37:58 +00:00
Normalized coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5497 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
75dc65c217
commit
d30ecfbd0e
@ -10,7 +10,6 @@
|
||||
|
||||
void _afailed (char* file, unsigned line)
|
||||
{
|
||||
|
||||
ExitTurbo();
|
||||
|
||||
drawWindow.top = 0;
|
||||
|
@ -4,10 +4,11 @@
|
||||
; Copy the data segment from the LOAD to the RUN location
|
||||
;
|
||||
|
||||
.export copydata
|
||||
.import __DATA_LOAD__, __DATA_RUN__, __DATA_SIZE__
|
||||
.include "geossym.inc"
|
||||
.include "jumptab.inc"
|
||||
.export copydata
|
||||
.import __DATA_LOAD__, __DATA_RUN__, __DATA_SIZE__
|
||||
|
||||
.include "geossym.inc"
|
||||
.include "jumptab.inc"
|
||||
|
||||
copydata:
|
||||
lda #<__DATA_SIZE__ ; no need to check if it is == 0
|
||||
|
@ -4,7 +4,7 @@
|
||||
; Maciej 'YTM/Elysium' Witkowiak, 15.07.2001
|
||||
;
|
||||
|
||||
.export _memcpy
|
||||
.import _MoveData
|
||||
.export _memcpy
|
||||
.import _MoveData
|
||||
|
||||
_memcpy = _MoveData
|
||||
_memcpy = _MoveData
|
||||
|
@ -4,7 +4,7 @@
|
||||
; Maciej 'YTM/Elysium' Witkowiak, 15.07.2001
|
||||
;
|
||||
|
||||
.export _memmove
|
||||
.import _MoveData
|
||||
.export _memmove
|
||||
.import _MoveData
|
||||
|
||||
_memmove = _MoveData
|
||||
_memmove = _MoveData
|
||||
|
@ -6,9 +6,9 @@
|
||||
; Maciej 'YTM/Elysium' Witkowiak, 20.08.2003
|
||||
;
|
||||
|
||||
.export _memset, _bzero, __bzero
|
||||
.import _ClearRam, _FillRam
|
||||
.export _memset, _bzero, __bzero
|
||||
.import _ClearRam, _FillRam
|
||||
|
||||
_bzero = _ClearRam
|
||||
__bzero = _ClearRam
|
||||
_memset = _FillRam
|
||||
_bzero = _ClearRam
|
||||
__bzero = _ClearRam
|
||||
_memset = _FillRam
|
||||
|
@ -5,21 +5,21 @@
|
||||
; Zero the bss segment.
|
||||
;
|
||||
|
||||
.export zerobss
|
||||
.import __BSS_RUN__, __BSS_SIZE__
|
||||
|
||||
.include "jumptab.inc"
|
||||
.include "geossym.inc"
|
||||
.export zerobss
|
||||
.import __BSS_RUN__, __BSS_SIZE__
|
||||
|
||||
.include "jumptab.inc"
|
||||
.include "geossym.inc"
|
||||
|
||||
.code
|
||||
|
||||
zerobss:
|
||||
lda #<__BSS_SIZE__
|
||||
ldx #>__BSS_SIZE__
|
||||
sta r0L
|
||||
stx r0H
|
||||
lda #<__BSS_RUN__
|
||||
ldx #>__BSS_RUN__
|
||||
sta r1L
|
||||
stx r1H
|
||||
jmp ClearRam
|
||||
lda #<__BSS_SIZE__
|
||||
ldx #>__BSS_SIZE__
|
||||
sta r0L
|
||||
stx r0H
|
||||
lda #<__BSS_RUN__
|
||||
ldx #>__BSS_RUN__
|
||||
sta r1L
|
||||
stx r1H
|
||||
jmp ClearRam
|
||||
|
@ -7,14 +7,14 @@
|
||||
|
||||
S_OBJS += _scrsize.o \
|
||||
cclear.o \
|
||||
chline.o \
|
||||
cvline.o \
|
||||
cgetc.o \
|
||||
chline.o \
|
||||
clrscr.o \
|
||||
color.o \
|
||||
cputc.o \
|
||||
cpputs.o \
|
||||
cputc.o \
|
||||
cursor.o \
|
||||
cvline.o \
|
||||
gotoxy.o \
|
||||
kbhit.o \
|
||||
revers.o \
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -7,44 +6,46 @@
|
||||
; 6.3.2001, 17.4.2003
|
||||
|
||||
|
||||
.include "geossym.inc"
|
||||
.export xsize, ysize
|
||||
.export screensize
|
||||
.importz cursor_r, cursor_c
|
||||
.import _cursor
|
||||
.constructor initscrsize
|
||||
|
||||
.include "geossym.inc"
|
||||
|
||||
.export xsize, ysize
|
||||
.export screensize
|
||||
.importzp cursor_r, cursor_c
|
||||
.import _cursor
|
||||
.constructor initscrsize
|
||||
|
||||
.segment "INIT"
|
||||
.segment "INIT"
|
||||
|
||||
initscrsize:
|
||||
.ifdef __GEOS_CBM__
|
||||
lda graphMode
|
||||
bpl L1
|
||||
lda #80 ; 80 columns (more or less)
|
||||
.byte $2c
|
||||
L1: lda #40 ; 40 columns (more or less)
|
||||
sta xsize
|
||||
lda #24 ; something like that for Y size
|
||||
lda graphMode
|
||||
bpl L1
|
||||
lda #80 ; 80 columns (more or less)
|
||||
.byte $2c
|
||||
L1: lda #40 ; 40 columns (more or less)
|
||||
sta xsize
|
||||
lda #24 ; something like that for Y size
|
||||
.else
|
||||
lda #70 ; 70 columns (more or less)
|
||||
sta xsize
|
||||
lda #23 ; something like that for Y size
|
||||
lda #70 ; 70 columns (more or less)
|
||||
sta xsize
|
||||
lda #23 ; something like that for Y size
|
||||
.endif
|
||||
sta ysize
|
||||
ldx #1
|
||||
stx cursor_r
|
||||
dex
|
||||
stx cursor_c
|
||||
txa
|
||||
jmp _cursor ; home and update cursor
|
||||
sta ysize
|
||||
ldx #1
|
||||
stx cursor_r
|
||||
dex
|
||||
stx cursor_c
|
||||
txa
|
||||
jmp _cursor ; home and update cursor
|
||||
|
||||
screensize:
|
||||
ldx xsize
|
||||
ldy ysize
|
||||
screensize:
|
||||
ldx xsize
|
||||
ldy ysize
|
||||
rts
|
||||
|
||||
.bss
|
||||
|
||||
xsize: .res 1
|
||||
ysize: .res 1
|
||||
xsize:
|
||||
.res 1
|
||||
ysize:
|
||||
.res 1
|
||||
|
@ -6,46 +6,46 @@
|
||||
; void cclearxy (unsigned char x, unsigned char y, unsigned char length);
|
||||
; void cclear (unsigned char length);
|
||||
|
||||
.export _cclearxy, _cclear
|
||||
.import popa, _gotoxy, fixcursor
|
||||
.importzp cursor_x, cursor_y, cursor_c
|
||||
|
||||
.include "jumptab.inc"
|
||||
.include "geossym.inc"
|
||||
|
||||
.export _cclearxy, _cclear
|
||||
.import popa, _gotoxy, fixcursor
|
||||
.importzp cursor_x, cursor_y, cursor_c
|
||||
|
||||
_cclearxy:
|
||||
pha ; Save the length
|
||||
jsr popa ; Get y
|
||||
jsr _gotoxy ; Call this one, will pop params
|
||||
pha ; Save the length
|
||||
jsr popa ; Get y
|
||||
jsr _gotoxy ; Call this one, will pop params
|
||||
pla ; Restore the length
|
||||
|
||||
_cclear:
|
||||
cmp #0 ; Is the length zero?
|
||||
beq L9 ; Jump if done
|
||||
cmp #0 ; Is the length zero?
|
||||
beq L9 ; Jump if done
|
||||
tax
|
||||
lda cursor_x ; left start
|
||||
sta r3L
|
||||
lda cursor_x+1
|
||||
sta r3L+1
|
||||
lda cursor_y ; level
|
||||
sta r2L
|
||||
lda cursor_x ; left start
|
||||
sta r3L
|
||||
lda cursor_x+1
|
||||
sta r3L+1
|
||||
lda cursor_y ; level
|
||||
sta r2L
|
||||
clc
|
||||
adc #8
|
||||
sta r2H
|
||||
adc #8
|
||||
sta r2H
|
||||
txa ; right end
|
||||
clc
|
||||
adc cursor_c
|
||||
sta cursor_c
|
||||
sta r4L
|
||||
ldx #r4
|
||||
ldy #3
|
||||
jsr DShiftLeft
|
||||
lda curPattern ; store current pattern
|
||||
adc cursor_c
|
||||
sta cursor_c
|
||||
sta r4L
|
||||
ldx #r4
|
||||
ldy #3
|
||||
jsr DShiftLeft
|
||||
lda curPattern ; store current pattern
|
||||
pha
|
||||
lda #0 ; set pattern to clear
|
||||
jsr SetPattern
|
||||
jsr Rectangle
|
||||
lda #0 ; set pattern to clear
|
||||
jsr SetPattern
|
||||
jsr Rectangle
|
||||
pla
|
||||
jsr SetPattern ; restore pattern
|
||||
jsr fixcursor
|
||||
jsr SetPattern ; restore pattern
|
||||
jsr fixcursor
|
||||
L9: rts
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -16,25 +15,25 @@
|
||||
|
||||
_cgetc:
|
||||
; show cursor if needed
|
||||
lda cursor_flag
|
||||
beq L0
|
||||
lda cursor_flag
|
||||
beq L0
|
||||
|
||||
jsr update_cursor
|
||||
lda cursor_x
|
||||
ldx cursor_x+1
|
||||
sta stringX
|
||||
stx stringX+1
|
||||
lda cursor_y
|
||||
sec
|
||||
sbc curHeight
|
||||
sta stringY
|
||||
jsr PromptOn
|
||||
jsr update_cursor
|
||||
lda cursor_x
|
||||
ldx cursor_x+1
|
||||
sta stringX
|
||||
stx stringX+1
|
||||
lda cursor_y
|
||||
sec
|
||||
sbc curHeight
|
||||
sta stringY
|
||||
jsr PromptOn
|
||||
|
||||
L0: jsr GetNextChar
|
||||
tax
|
||||
beq L0
|
||||
pha
|
||||
jsr PromptOff
|
||||
pla
|
||||
ldx #0
|
||||
rts
|
||||
L0: jsr GetNextChar
|
||||
tax
|
||||
beq L0
|
||||
pha
|
||||
jsr PromptOff
|
||||
pla
|
||||
ldx #0
|
||||
rts
|
||||
|
@ -6,40 +6,40 @@
|
||||
; void chlinexy (unsigned char x, unsigned char y, unsigned char length);
|
||||
; void chline (unsigned char length);
|
||||
|
||||
.export _chlinexy, _chline
|
||||
.import popa, _gotoxy, fixcursor
|
||||
.importzp cursor_x, cursor_y, cursor_c
|
||||
|
||||
.include "jumptab.inc"
|
||||
.include "geossym.inc"
|
||||
|
||||
.export _chlinexy, _chline
|
||||
.import popa, _gotoxy, fixcursor
|
||||
.importzp cursor_x, cursor_y, cursor_c
|
||||
|
||||
_chlinexy:
|
||||
pha ; Save the length
|
||||
jsr popa ; Get y
|
||||
jsr _gotoxy ; Call this one, will pop params
|
||||
jsr popa ; Get y
|
||||
jsr _gotoxy ; Call this one, will pop params
|
||||
pla ; Restore the length
|
||||
|
||||
_chline:
|
||||
cmp #0 ; Is the length zero?
|
||||
beq L9 ; Jump if done
|
||||
cmp #0 ; Is the length zero?
|
||||
beq L9 ; Jump if done
|
||||
tax
|
||||
lda cursor_x ; left start
|
||||
sta r3L
|
||||
lda cursor_x+1
|
||||
sta r3L+1
|
||||
lda cursor_y ; level
|
||||
lda cursor_x ; left start
|
||||
sta r3L
|
||||
lda cursor_x+1
|
||||
sta r3L+1
|
||||
lda cursor_y ; level
|
||||
sec
|
||||
sbc #4 ; in the middle of a cell
|
||||
sta r11L
|
||||
sbc #4 ; in the middle of a cell
|
||||
sta r11L
|
||||
txa ; right end
|
||||
clc
|
||||
adc cursor_c
|
||||
sta cursor_c
|
||||
sta r4L
|
||||
ldx #r4
|
||||
ldy #3
|
||||
jsr DShiftLeft
|
||||
lda #%11111111 ; pattern
|
||||
jsr HorizontalLine
|
||||
jsr fixcursor
|
||||
adc cursor_c
|
||||
sta cursor_c
|
||||
sta r4L
|
||||
ldx #r4
|
||||
ldy #3
|
||||
jsr DShiftLeft
|
||||
lda #%11111111 ; pattern
|
||||
jsr HorizontalLine
|
||||
jsr fixcursor
|
||||
L9: rts
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -7,48 +6,47 @@
|
||||
; void clrscr (void);
|
||||
|
||||
.export _clrscr
|
||||
.import fixcursor
|
||||
.importzp cursor_c, cursor_r
|
||||
|
||||
.include "jumptab.inc"
|
||||
.include "geossym.inc"
|
||||
.include "const.inc"
|
||||
|
||||
.import fixcursor
|
||||
.importzp cursor_c, cursor_r
|
||||
|
||||
_clrscr:
|
||||
lda #ST_WR_FORE | ST_WR_BACK
|
||||
sta dispBufferOn
|
||||
lda curPattern ; save current pattern
|
||||
pha
|
||||
lda #0 ; set pattern to clear
|
||||
jsr SetPattern
|
||||
ldx #0
|
||||
stx r3L
|
||||
stx r3H
|
||||
stx r2L
|
||||
stx cursor_c
|
||||
inx
|
||||
stx cursor_r
|
||||
jsr fixcursor ; home cursor
|
||||
lda #ST_WR_FORE | ST_WR_BACK
|
||||
sta dispBufferOn
|
||||
lda curPattern ; save current pattern
|
||||
pha
|
||||
lda #0 ; set pattern to clear
|
||||
jsr SetPattern
|
||||
ldx #0
|
||||
stx r3L
|
||||
stx r3H
|
||||
stx r2L
|
||||
stx cursor_c
|
||||
inx
|
||||
stx cursor_r
|
||||
jsr fixcursor ; home cursor
|
||||
.ifdef __GEOS_CBM__
|
||||
lda #199
|
||||
sta r2H
|
||||
lda graphMode
|
||||
bpl L40
|
||||
lda #>639 ; 80 columns
|
||||
ldx #<639
|
||||
bne L99
|
||||
L40: lda #>319 ; 40 columns
|
||||
ldx #<319
|
||||
lda #199
|
||||
sta r2H
|
||||
lda graphMode
|
||||
bpl L40
|
||||
lda #>639 ; 80 columns
|
||||
ldx #<639
|
||||
bne L99
|
||||
L40: lda #>319 ; 40 columns
|
||||
ldx #<319
|
||||
L99:
|
||||
.else
|
||||
lda #191
|
||||
sta r2H
|
||||
lda #>559
|
||||
ldx #<559
|
||||
lda #191
|
||||
sta r2H
|
||||
lda #>559
|
||||
ldx #<559
|
||||
.endif
|
||||
sta r4H
|
||||
stx r4L
|
||||
jsr Rectangle
|
||||
pla
|
||||
jmp SetPattern ; restore pattern
|
||||
sta r4H
|
||||
stx r4L
|
||||
jsr Rectangle
|
||||
pla
|
||||
jmp SetPattern ; restore pattern
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -10,11 +9,11 @@
|
||||
;
|
||||
|
||||
|
||||
.export _textcolor, _bgcolor, _bordercolor
|
||||
.export _textcolor, _bgcolor, _bordercolor
|
||||
|
||||
; for GEOS 2.0 there is no color support, perhaps Wheels has it
|
||||
|
||||
_textcolor:
|
||||
_bgcolor:
|
||||
_bordercolor:
|
||||
rts
|
||||
rts
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -12,7 +11,6 @@
|
||||
; does not update cursor position
|
||||
|
||||
.export _cpputsxy, _cpputs
|
||||
|
||||
.import _gotoxy
|
||||
.import popa
|
||||
.importzp cursor_x, cursor_y
|
||||
@ -22,24 +20,24 @@
|
||||
.include "jumptab.inc"
|
||||
|
||||
_cpputsxy:
|
||||
sta r0L ; Save s for later
|
||||
stx r0H
|
||||
jsr popa ; Get Y
|
||||
jsr _gotoxy ; Set cursor, pop x
|
||||
jmp L0 ; Same as cputs...
|
||||
sta r0L ; Save s for later
|
||||
stx r0H
|
||||
jsr popa ; Get Y
|
||||
jsr _gotoxy ; Set cursor, pop x
|
||||
jmp L0 ; Same as cputs...
|
||||
|
||||
_cpputs:
|
||||
sta r0L ; Save s
|
||||
stx r0H
|
||||
L0: ldy #0
|
||||
lda (r0),y
|
||||
bne L1 ; Jump if there's something
|
||||
sta r0L ; Save s
|
||||
stx r0H
|
||||
L0: ldy #0
|
||||
lda (r0),y
|
||||
bne L1 ; Jump if there's something
|
||||
rts
|
||||
|
||||
L1: lda cursor_x
|
||||
sta r11L
|
||||
lda cursor_x+1
|
||||
sta r11H
|
||||
lda cursor_y
|
||||
sta r1H
|
||||
jmp PutString
|
||||
L1: lda cursor_x
|
||||
sta r11L
|
||||
lda cursor_x+1
|
||||
sta r11H
|
||||
lda cursor_y
|
||||
sta r1H
|
||||
jmp PutString
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -24,7 +23,6 @@
|
||||
; UPLINE = ?, KEY_UPARROW = GOTOY, ...
|
||||
|
||||
.export _cputcxy, _cputc, update_cursor
|
||||
|
||||
.import _gotoxy, fixcursor
|
||||
.import popa
|
||||
.import xsize,ysize
|
||||
@ -35,9 +33,9 @@
|
||||
.include "jumptab.inc"
|
||||
|
||||
_cputcxy:
|
||||
pha ; Save C
|
||||
jsr popa ; Get Y
|
||||
jsr _gotoxy ; Set cursor, drop x
|
||||
pha ; Save C
|
||||
jsr popa ; Get Y
|
||||
jsr _gotoxy ; Set cursor, drop x
|
||||
pla ; Restore C
|
||||
|
||||
; Plot a character - also used as internal function
|
||||
@ -45,58 +43,58 @@ _cputcxy:
|
||||
_cputc:
|
||||
tax ; save character
|
||||
; some characters 0-31 are not safe for PutChar
|
||||
cmp #$20
|
||||
bcs L1
|
||||
cmp #CR
|
||||
beq do_cr
|
||||
cmp #LF
|
||||
beq do_lf
|
||||
cmp #KEY_DELETE
|
||||
bne L0
|
||||
ldx #BACKSPACE
|
||||
cmp #$20
|
||||
bcs L1
|
||||
cmp #CR
|
||||
beq do_cr
|
||||
cmp #LF
|
||||
beq do_lf
|
||||
cmp #KEY_DELETE
|
||||
bne L0
|
||||
ldx #BACKSPACE
|
||||
sec
|
||||
bcs L2
|
||||
bcs L2
|
||||
L0: rts
|
||||
|
||||
L1: clc
|
||||
L2: php
|
||||
lda cursor_x
|
||||
sta r11L
|
||||
lda cursor_x+1
|
||||
sta r11H
|
||||
lda cursor_y
|
||||
sta r1H
|
||||
lda cursor_x
|
||||
sta r11L
|
||||
lda cursor_x+1
|
||||
sta r11H
|
||||
lda cursor_y
|
||||
sta r1H
|
||||
txa
|
||||
jsr PutChar
|
||||
jsr PutChar
|
||||
plp
|
||||
bcs update_cursor
|
||||
bcs update_cursor
|
||||
|
||||
inc cursor_c
|
||||
lda cursor_c
|
||||
cmp xsize ; hit right margin?
|
||||
bne update_cursor
|
||||
lda #0 ; yes - do cr+lf
|
||||
sta cursor_c
|
||||
do_lf: inc cursor_r
|
||||
lda cursor_r
|
||||
cmp ysize ; hit bottom margin?
|
||||
bne update_cursor
|
||||
dec cursor_r ; yes - stay in the last line
|
||||
inc cursor_c
|
||||
lda cursor_c
|
||||
cmp xsize ; hit right margin?
|
||||
bne update_cursor
|
||||
lda #0 ; yes - do cr+lf
|
||||
sta cursor_c
|
||||
do_lf: inc cursor_r
|
||||
lda cursor_r
|
||||
cmp ysize ; hit bottom margin?
|
||||
bne update_cursor
|
||||
dec cursor_r ; yes - stay in the last line
|
||||
|
||||
update_cursor:
|
||||
jsr fixcursor
|
||||
lda cursor_x
|
||||
sta r4L
|
||||
lda cursor_x+1
|
||||
sta r4H
|
||||
lda cursor_y
|
||||
jsr fixcursor
|
||||
lda cursor_x
|
||||
sta r4L
|
||||
lda cursor_x+1
|
||||
sta r4H
|
||||
lda cursor_y
|
||||
sec
|
||||
sbc curHeight
|
||||
sta r5L
|
||||
lda #1 ; update cursor prompt position
|
||||
sta r3L
|
||||
jmp PosSprite
|
||||
sbc curHeight
|
||||
sta r5L
|
||||
lda #1 ; update cursor prompt position
|
||||
sta r3L
|
||||
jmp PosSprite
|
||||
|
||||
do_cr: lda #0
|
||||
sta cursor_c
|
||||
beq update_cursor
|
||||
do_cr: lda #0
|
||||
sta cursor_c
|
||||
beq update_cursor
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -9,20 +8,21 @@
|
||||
.export _cursor
|
||||
.import update_cursor
|
||||
.importzp cursor_flag
|
||||
|
||||
.include "jumptab.inc"
|
||||
.include "geossym.inc"
|
||||
|
||||
_cursor:
|
||||
|
||||
tay ; onoff into Y
|
||||
ldx #0 ; High byte of result
|
||||
lda cursor_flag ; Get old value
|
||||
ldx #0 ; High byte of result
|
||||
lda cursor_flag ; Get old value
|
||||
pha
|
||||
sty cursor_flag ; Set new value
|
||||
sty cursor_flag ; Set new value
|
||||
tya
|
||||
beq L1
|
||||
lda curHeight ; prepare cursor
|
||||
jsr InitTextPrompt
|
||||
jsr update_cursor ; place it on screen
|
||||
beq L1
|
||||
lda curHeight ; prepare cursor
|
||||
jsr InitTextPrompt
|
||||
jsr update_cursor ; place it on screen
|
||||
L1: pla
|
||||
rts
|
||||
|
@ -6,41 +6,41 @@
|
||||
; void cvlinexy (unsigned char x, unsigned char y, unsigned char length);
|
||||
; void cvline (unsigned char length);
|
||||
|
||||
.export _cvlinexy, _cvline
|
||||
.import popa, _gotoxy, fixcursor
|
||||
.importzp cursor_x, cursor_y, cursor_r
|
||||
|
||||
.include "jumptab.inc"
|
||||
.include "geossym.inc"
|
||||
|
||||
.export _cvlinexy, _cvline
|
||||
.import popa, _gotoxy, fixcursor
|
||||
.importzp cursor_x, cursor_y, cursor_r
|
||||
|
||||
_cvlinexy:
|
||||
pha ; Save the length
|
||||
jsr popa ; Get y
|
||||
jsr _gotoxy ; Call this one, will pop params
|
||||
pha ; Save the length
|
||||
jsr popa ; Get y
|
||||
jsr _gotoxy ; Call this one, will pop params
|
||||
pla ; Restore the length
|
||||
|
||||
_cvline:
|
||||
cmp #0 ; Is the length zero?
|
||||
beq L9 ; Jump if done
|
||||
_cvline:
|
||||
cmp #0 ; Is the length zero?
|
||||
beq L9 ; Jump if done
|
||||
tax
|
||||
lda cursor_x ; x position
|
||||
lda cursor_x ; x position
|
||||
clc
|
||||
adc #4 ; in the middle of cell
|
||||
sta r4L
|
||||
lda cursor_x+1
|
||||
adc #0
|
||||
sta r4L+1
|
||||
lda cursor_y ; top start
|
||||
sta r3L
|
||||
adc #4 ; in the middle of cell
|
||||
sta r4L
|
||||
lda cursor_x+1
|
||||
adc #0
|
||||
sta r4L+1
|
||||
lda cursor_y ; top start
|
||||
sta r3L
|
||||
txa ; bottom end
|
||||
clc
|
||||
adc cursor_r
|
||||
sta cursor_r
|
||||
sta r3H
|
||||
asl r3H
|
||||
asl r3H
|
||||
asl r3H
|
||||
lda #%11111111 ; pattern
|
||||
jsr VerticalLine
|
||||
jsr fixcursor
|
||||
adc cursor_r
|
||||
sta cursor_r
|
||||
sta r3H
|
||||
asl r3H
|
||||
asl r3H
|
||||
asl r3H
|
||||
lda #%11111111 ; pattern
|
||||
jsr VerticalLine
|
||||
jsr fixcursor
|
||||
L9: rts
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -15,30 +14,33 @@
|
||||
|
||||
.include "jumptab.inc"
|
||||
|
||||
_gotox: sta cursor_c
|
||||
jmp fixcursor
|
||||
_gotox:
|
||||
sta cursor_c
|
||||
jmp fixcursor
|
||||
|
||||
_gotoy: sta cursor_r
|
||||
inc cursor_r
|
||||
jmp fixcursor
|
||||
_gotoy:
|
||||
sta cursor_r
|
||||
inc cursor_r
|
||||
jmp fixcursor
|
||||
|
||||
_gotoxy: sta cursor_r
|
||||
inc cursor_r
|
||||
jsr popa
|
||||
sta cursor_c
|
||||
_gotoxy:
|
||||
sta cursor_r
|
||||
inc cursor_r
|
||||
jsr popa
|
||||
sta cursor_c
|
||||
|
||||
; convert 8x8 x/y coordinates to GEOS hires
|
||||
fixcursor:
|
||||
lda cursor_c
|
||||
sta cursor_x
|
||||
lda #0
|
||||
sta cursor_x+1
|
||||
lda cursor_r
|
||||
sta cursor_y
|
||||
ldx #cursor_x
|
||||
ldy #3
|
||||
jsr DShiftLeft
|
||||
asl cursor_y
|
||||
asl cursor_y
|
||||
asl cursor_y
|
||||
rts
|
||||
lda cursor_c
|
||||
sta cursor_x
|
||||
lda #0
|
||||
sta cursor_x+1
|
||||
lda cursor_r
|
||||
sta cursor_y
|
||||
ldx #cursor_x
|
||||
ldy #3
|
||||
jsr DShiftLeft
|
||||
asl cursor_y
|
||||
asl cursor_y
|
||||
asl cursor_y
|
||||
rts
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -10,13 +9,10 @@
|
||||
|
||||
.include "geossym.inc"
|
||||
|
||||
.proc _kbhit
|
||||
|
||||
ldx #0 ; High byte of result
|
||||
lda pressFlag
|
||||
rol ; Bit 7 is new key flag
|
||||
txa ; A = 0
|
||||
rol
|
||||
rts
|
||||
|
||||
.endproc
|
||||
_kbhit:
|
||||
ldx #0 ; High byte of result
|
||||
lda pressFlag
|
||||
rol ; Bit 7 is new key flag
|
||||
txa ; A = 0
|
||||
rol
|
||||
rts
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -13,24 +12,24 @@
|
||||
.include "const.inc"
|
||||
|
||||
_revers:
|
||||
tax
|
||||
bne L0 ; turn on
|
||||
lda #0
|
||||
.byte $2c
|
||||
L0: lda #SET_REVERSE
|
||||
sta tmp1
|
||||
tax
|
||||
bne L0 ; turn on
|
||||
lda #0
|
||||
.byte $2c
|
||||
L0: lda #SET_REVERSE
|
||||
sta tmp1
|
||||
|
||||
lda currentMode
|
||||
tax
|
||||
and #SET_REVERSE
|
||||
tay ; store old value
|
||||
txa
|
||||
and #%11011111 ; mask out
|
||||
ora tmp1 ; set new value
|
||||
sta currentMode
|
||||
lda currentMode
|
||||
tax
|
||||
and #SET_REVERSE
|
||||
tay ; store old value
|
||||
txa
|
||||
and #%11011111 ; mask out
|
||||
ora tmp1 ; set new value
|
||||
sta currentMode
|
||||
|
||||
ldx #0
|
||||
tya
|
||||
beq L1
|
||||
lda #1
|
||||
L1: rts
|
||||
ldx #0
|
||||
tya
|
||||
beq L1
|
||||
lda #1
|
||||
L1: rts
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
@ -12,10 +11,12 @@
|
||||
.export _wherex, _wherey
|
||||
.importzp cursor_c, cursor_r
|
||||
|
||||
_wherex: lda cursor_c
|
||||
ldx #0
|
||||
rts
|
||||
_wherex:
|
||||
lda cursor_c
|
||||
ldx #0
|
||||
rts
|
||||
|
||||
_wherey: lda cursor_r
|
||||
ldx #0
|
||||
rts
|
||||
_wherey:
|
||||
lda cursor_r
|
||||
ldx #0
|
||||
rts
|
||||
|
Loading…
x
Reference in New Issue
Block a user