Jump to content
Sign in to follow this  
RSS Bot

The Upward Spiral - progress (such as it is)

Recommended Posts

In case anyone's watching ...

 

Re-introduced colour code and came up with some nice optimizations based on the "tiledraw.o" test. The current test kernel in that series, "tiledraw3.o" is coming along.

 

One annoyance? branches in the P0 draw routine taking a hit for the carry in PC (i.e. crossing a page boundary) may require some of my sleep nop's to be replaced with page alignment spacers. Keeping that working will be sheer Hell.

 

Theory: if I need to add some bytes but not cycles to get alignment without changing timing, pad out a few nop's but do a "guaranteed branch" over it, probably by doing something like

CODE

bit rows_left; guaranteed to have high bit clear

bvc .skip_align

nop

nop

nop

nop

nop

nop

.skip_align: ;

 

 

The Hell will be keeping the page alignments and cycle counts both correct. Thank God I'm doing this in M4 and can easily re-sort which scanlines in each row things are going to happen.

 

For your entertainment, here's the latest build's echo outputs...

CODE

player_data_start

$80

player_transient data length

$3

player_data_end

$99

player_persist data length

$17

total player data length

$1a

linkage_data_start

$9a

linkage_data_ends

$a1

linkage_data length

$8

sounds (6B) at

$a2

tiledraw_data_start

$a9

tiledraw_data_end

$f0

tiledraw data length

$48

End of RAM allocations

$f0

Total RAM used

$71

Free RAM for stack

$f

ROM bank 0 begins

$f000

Setup begins

$f026

Frame draw begins (with VSYNC)

$f03a

vertical sync space preamble ends

$f043

beginning game animation and input

$f043

Prepare to draw rows

$f261

end of game logic

$f26d

length of main loop

$22a

Row drawing begins

$f282

Straight-ahead drawing ends

$f6ca

length of unrolled drawing

$448

End of kernel

$f6de

end of bank 0 code

$f6de

length of bank 0 code

$6de

Start of bank 0 data

$f800

Start of lookup tables area

$f800

End of lookup tables area

$f829

Lookup tables' length

$29

Start of bitmaps area

$f829

end of bitmaps data

$f969

length of bitmaps data

$140

start of maps data

$f969

end of maps data

$fa81

length of maps data

 

end of bank 0 data

$fa81

length of data

$281

 

 

 

 

http://www.atariage.com/forums/index.php?a...&showentry=1555

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...