Login
Back to forumReply to this topicGo to last reply

Posted By

Harry Potter
on 2022-04-30
18:02:58
 WinVice xplus4 not registering cart made w/ cc65

Hi! I just started a port of AdvSkelVic65 to a C16 cartridge, and the cartridge is not running. I am using cc65 and a custom cfg and crt0.s files. The crto.s code follows:

.segment "STARTUP"
.word startup ;Cold start
.word $FEBC ;Warm start, default calls NMI exit.
.byt 0, $43,$42,$4d ;magic to identify cartridge

startup:
;Thi
sei
ldx #$ff
txs
lda $fb
pha
;ldx #$02 ; cartrige 1 lo, kernal
sta $FDD2
jsr $FF84 ; Initialize I/O devices
jsr $FF87 ; RAM Test
pla
sta $FB
jsr $FF8A ; Restore vectors to initial values
jsr $FF81 ; Initialize screen editor

Posted By

BSZ
on 2022-05-02
13:51:42
 Re: WinVice xplus4 not registering cart made w/ cc65

If no one else writes it, I will: On plus/4, entry points are not just addresses, but jump instructions. This causes you to slip by 2 BYTE. Then the ROM ID BYTE if it is $00, it will not be called. Also, the warm-start address is wrong: this address ($FEBC) is I/O area in the plus/4. And no NMI either. I don't know about the rest. happy

Posted By

Harry Potter
on 2022-05-02
15:09:36
 Re: WinVice xplus4 not registering cart made w/ cc65

I solved those problems, but now, when the program waits for a key press, it stops responding. It did this with both cgetc() and my CBMSimpleIO library's getkey() funcion. printscr() works, though.

Posted By

Harry Potter
on 2022-05-03
06:40:37
 Re: WinVice xplus4 not registering cart made w/ cc65

I found the problem: I forgot to reenable interrupts after setting up the kernal.



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2024