1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-28 06:30:16 +00:00

added imports for conio init to conio functions, so the constructor will get linked and called automatically

This commit is contained in:
mrdudz 2015-07-13 12:10:09 +02:00
parent 9e1d39a409
commit 515a61a302
10 changed files with 42 additions and 10 deletions

View File

@ -23,3 +23,8 @@ colloop: lda #' '
rts
;-------------------------------------------------------------------------------
; force the init constructor to be imported
.import initconio
conio_init = initconio

View File

@ -55,3 +55,9 @@ colors: ; G R B
.word ((7<<6)+(4<<3)+(4)) ; d light green
.word ((4<<6)+(4<<3)+(7)) ; e light blue
.word ((6<<6)+(6<<3)+(6)) ; f light gray
;-------------------------------------------------------------------------------
; force the init constructor to be imported
.import initconio
conio_init = initconio

View File

@ -91,3 +91,9 @@ putchar:
staio VDC_DATA_HI
rts
;-------------------------------------------------------------------------------
; force the init constructor to be imported
.import initconio
conio_init = initconio

View File

@ -149,10 +149,6 @@ start:
; Call module constructors
jsr initlib
;; FIXME: this should be called from a constructor instead
.import initconio
jsr initconio
; Pass an empty command line
jsr push0 ; argc
jsr push0 ; argv

View File

@ -13,4 +13,9 @@ _gotoxy:
sta CURS_X ; Set X
jmp plot ; Set the cursor position
;-------------------------------------------------------------------------------
; force the init constructor to be imported
.import initconio
conio_init = initconio

View File

@ -29,4 +29,9 @@ _plothi:
.byte >($0000+(line*$80))
.endrepeat
;-------------------------------------------------------------------------------
; force the init constructor to be imported
.import initconio
conio_init = initconio

View File

@ -13,12 +13,11 @@ get_tv() is missing
some graphical petscii chars should get added to the charset
conio-init should get initialized from a constructor rather than always get
called from crt0 (which for some reason doesnt work) -> see conio.s, it should
get linked if _any_ of the conio function is used
interruptor support in crt0 (and cfg) is missing
conio lacks support for different screen sizes, which could be used with
different video modes
--------------------------------------------------------------------------------
a good emulator to use for PC-Engine is "mednafen" (mednafen.sourceforge.net)

View File

@ -1,5 +1,13 @@
; FIXME: actual revers output is not supported yet
.export _revers
_revers:
lda #0
rts
;-------------------------------------------------------------------------------
; force the init constructor to be imported
.import initconio
conio_init = initconio

View File

@ -8,6 +8,8 @@ _screensize:
ldy ysize
rts
; FIXME: changing the video mode allows for different screen sizes
.rodata
.export xsize, ysize

View File

@ -42,7 +42,7 @@ void main(void)
gotoxy(0,8);
clk = clock();
cprintf("clock: %08lx", clk);
for (i = 0; i < 4; ++i)
{
gotoxy(0, 12 + i);
@ -58,4 +58,4 @@ void main(void)
}
}
for(;;);
}
}