CINT adjustments for 'Operacja Proboszcz' game

This commit is contained in:
FeralChild64 committed 2019-10-20 12:32:14 +02:00
1 parent 2009702011
commit 0f80941eac
7 files changed
+53 -36

No files matched your search

@@ -1,15 +1,15 @@
//
// Official Kernal routine, described in:
// It seems this is a part CINT which initializes screen and keyboard, but does not
// reset VIC-II. See here: https://csdb.dk/forums/index.php?roomid=11&topicid=17048&firstpost=22
//
// For more details see:
// - [RG64] C64 Programmer's Reference Guide - page 280
// - [CM64] Compute's Mapping the Commodore 64 - page 242
//
// CPU registers that has to be preserved (see [RG64]): none
//
cint_screen_keyboard_real:
cint_real:
// XXX check what really is performed here
// According to [CM64], this routine checks for PAL/NTSC. It's definitely not done
// within the 'BRK' part, this can be easily checked - POKE something
@@ -116,9 +116,6 @@ cint_brk: // entry for BRK and STOP+RESTORE - XXX, where should it start?
ldx #$00
stx MODE
// Setup video and I/O
jsr setup_vicii
// Fallthrough/jump to screen clear routine (Compute's Mapping the 64 p215)
jmp clear_screen
@@ -0,0 +1,6 @@
// Routine too long to fit here
cint_screen_keyboard:
jmp cint_screen_keyboard_real
+2
View File
@@ -0,0 +1,2 @@
Game 'Operacja Proboszcz' explicitly calls this location.
-6
View File
@@ -1,6 +0,0 @@
// Our implementation is longer than the original one,
// placing it here would cause a collision with OPEN
CINT:
jmp cint_real
+16
View File
@@ -0,0 +1,16 @@
//
// Official Kernal routine, described in:
//
// - [RG64] C64 Programmer's Reference Guide - page 280
// - [CM64] Compute's Mapping the Commodore 64 - page 242
//
// CPU registers that has to be preserved (see [RG64]): none
//
CINT:
// Setup video and I/O
jsr setup_vicii
jmp cint_screen_keyboard
@@ -12,6 +12,7 @@ default_brk_handler:
jsr JRESTOR
jsr JIOINIT
jsr setup_vicii // XXX should probably be a part of cint_brk
jsr cint_brk
cli