mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-03-03 12:31:32 +00:00
tfv: get rotate always working
This commit is contained in:
parent
1033f0b6e8
commit
3711c5431e
@ -17,6 +17,26 @@ populate all 48k of RAM).
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Memory Map
|
||||
~~~~~~~~~~
|
||||
$00 zero page
|
||||
$01 stack
|
||||
$02-$03 ??
|
||||
$04-$07 lores page 1
|
||||
$08-$0b lores page 2
|
||||
$0c-$0f background graphics
|
||||
$10-$1f ??
|
||||
$20-??? code
|
||||
$B6-$BD multiply tables
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Mode7 Optimization Notes
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
@ -29,13 +29,13 @@
|
||||
; square2_hi = >(((I-255)*(I-255))/4)
|
||||
|
||||
; Note: DOS3.3 starts at $9600
|
||||
; I/O starts at $c000
|
||||
|
||||
square1_lo = $B600
|
||||
square1_hi = $B800
|
||||
square2_lo = $BA00
|
||||
square2_hi = $BC00
|
||||
|
||||
.ifndef square1_lo
|
||||
square1_lo = $8E00
|
||||
square1_hi = $9000
|
||||
square2_lo = $9200
|
||||
square2_hi = $9400
|
||||
.endif
|
||||
|
||||
; for(i=0;i<512;i++) {
|
||||
; square1_lo[i]=((i*i)/4)&0xff;
|
||||
@ -44,6 +44,10 @@ square2_hi = $9400
|
||||
; square2_hi[i]=(( ((i-255)*(i-255))/4)>>8)&0xff;
|
||||
; }
|
||||
|
||||
|
||||
; note, don't run these more than once?
|
||||
; why not? oh, smc that we don't reset
|
||||
|
||||
init_multiply_tables:
|
||||
|
||||
; Build the add tables
|
||||
|
@ -6,7 +6,7 @@ rotate_intro:
|
||||
|
||||
; init the multiply routines
|
||||
|
||||
jsr init_multiply_tables
|
||||
; jsr init_multiply_tables
|
||||
|
||||
; first copy current screen to background
|
||||
|
||||
@ -59,8 +59,8 @@ done_rotate:
|
||||
; gr_copy_current_to_offscreen 40x40
|
||||
;=========================================================
|
||||
; Copy draw page to $c00
|
||||
; Take image in 0xc00
|
||||
; Copy to DRAW_PAGE
|
||||
; Take image in DRAW_PAGE
|
||||
; Copy to $c00
|
||||
; Actually copy lines 0..39
|
||||
; Don't over-write bottom 4 lines of text
|
||||
gr_copy_current_to_offscreen_40x40:
|
||||
|
@ -29,8 +29,8 @@ do_battle:
|
||||
sta ENEMY_ATTACKING
|
||||
|
||||
; FIXME: set limit break
|
||||
lda #3
|
||||
sta HERO_LIMIT
|
||||
; lda #3
|
||||
; sta HERO_LIMIT
|
||||
|
||||
; start battle count part-way in
|
||||
lda #20
|
||||
|
@ -35,6 +35,9 @@ handle_overworld:
|
||||
lda #$1
|
||||
sta REFRESH
|
||||
|
||||
lda #3
|
||||
sta HERO_LIMIT
|
||||
|
||||
lda #5
|
||||
sta MAP_X
|
||||
|
||||
|
@ -10,6 +10,12 @@
|
||||
; Clear screen and setup graphics
|
||||
;================================
|
||||
|
||||
;================================
|
||||
; Init Variables
|
||||
;================================
|
||||
|
||||
jsr init_multiply_tables
|
||||
|
||||
;=====================
|
||||
; Handle Overworld
|
||||
;=====================
|
||||
|
Loading…
x
Reference in New Issue
Block a user