Skip to content

Commit

Permalink
put setup VIC-II routine at $E5A0 for Advanced Pinball Simulator. Issue
Browse files Browse the repository at this point in the history
  • Loading branch information
gardners committed May 5, 2019
1 parent e88f12f commit 810dfb7
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 23 deletions.
17 changes: 1 addition & 16 deletions c64/kernal/cint.s
Original file line number Diff line number Diff line change
@@ -1,22 +1,7 @@
;; Function defined on pp272-273 of C64 Programmers Reference Guide
;; Compute's Mapping the 64 p215
cint:
;; Set up default IO values (Compute's Mapping the 64 p215)
lda #$1b ; Enable text mode
sta $d011
lda #$c8 ; 40 column etc
sta $d016

;; Compute's Mapping the 64, p156
;; We use a different colour scheme of white text on all blue
lda #$06
sta $D020
sta $D021

;; Turn off sprites
;; (observed hanging around after running programs and resetting)
lda #$00
sta $D015
jsr setup_vicii

;; Initialise cursor blink flags (Compute's Mapping the 64 p215)
lda #$00
Expand Down
19 changes: 19 additions & 0 deletions c64/kernal/e5a0.setup_vicii.s
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@

setup_vicii:
;; Set up default IO values (Compute's Mapping the 64 p215)
lda #$1b ; Enable text mode
sta $d011
lda #$c8 ; 40 column etc
sta $d016

;; Compute's Mapping the 64, p156
;; We use a different colour scheme of white text on all blue
lda #$06
sta $D020
sta $D021

;; Turn off sprites
;; (observed hanging around after running programs and resetting)
lda #$00
sta $D015

15 changes: 8 additions & 7 deletions src/collect_data.c
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ int main (int argc, char *argv[]) {
int collect_cycles=5000000;

// KERNAL part is actually just under 7KB
int rom_bottom=0xe4b7;
int rom_bottom=0xa000;
int rom_top=0xffff;
char *filename=NULL;

Expand Down Expand Up @@ -198,13 +198,14 @@ int main (int argc, char *argv[]) {
int nf=sscanf((char *)buffer,".C:%x%*[^:]:%*x X:%*x Y:%*x SP:%x %*[^ ] %d",&pc,&sp,&cycles);
if (nf==3) {
// fprintf(stdout,"%x %x %d\n",pc,sp,cycles);
// Detect entry into ROM via code
if (pc>=rom_bottom&&pc<=rom_top) {
if (last_pc<rom_bottom||last_pc>rom_top) {
// PC has just entered the ROM
fprintf(stdout,"$%04x called from $%04x @ cycle %d\n",pc,last_pc,cycles);
// Detect entry into ROM via code
if (pc<0xc000||pc>=0xe000)
if (pc>=rom_bottom&&pc<=rom_top) {
if (last_pc<rom_bottom||last_pc>rom_top) {
// PC has just entered the ROM
fprintf(stdout,"$%04x called from $%04x @ cycle %d\n",pc,last_pc,cycles);
}
}
}
// Detect entry into ROM via interrupt
if (pc>=rom_bottom&&pc<=rom_top)
if (sp==(last_sp-3)) {
Expand Down

0 comments on commit 810dfb7

Please sign in to comment.