Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
PutTile16x16 Pixels + Attributes
#23
boriel Wrote:The problem here is __ATTR_ADDR is taking into account a configurable SCREEN_ADDRESS variable (previously discussed here). So if you want your program to work in a variable screen address, you should work considering 0 offset an adding (SCREEN_ADDRESS) at the end, so should change it this way:

Code:
;; 23 T-States up to here
         ;; The following must be changed, start form 0 and add (SCREEN_ADDRESS) later
         ; add     a,88       ; 88 * 256 = 22528 - start of attributes.

Boriel - if you put in the limit that any screen address has to be 256-byte aligned (and really, it should be. That's the whole point of INC H going to the next line in a character), then you could just tweak the add A,88 there to add in the "page number" instead.... no?

I think that would be a better result, allowing for a variable screen address.

Incidentally, why have a variable screen address? For writing to a shadow screen? If it's about other computers....they won't have the screen layout of a spectrum anyway!
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 2 Guest(s)