AMOS:Screenbase structure

From Amiga Coding
Jump to: navigation, search

Sources

Andrew D. Burton and Andy Church (email dated: 26 May 93 19:56:00 EST, from: Andrew Church <95ACHURCH@vax.mbhs.edu>, with subject: Re: Screen Base)


Structure

Here's all that we've been able to find out about the Screen Base structure:

Ofs | Item
----+-----------------------------------------------------
$00 | Bitplane 0 Logical
$04 | Bitplane 1
$08 | Bitplane 2
$0C | Bitplane 3
$10 | Bitplane 4
$14 | Bitplane 5
$18 | Bitplane 0 Physical
$1C | Bitplane 1
$20 | Bitplane 2
$24 | Bitplane 3
$28 | Bitplane 4
$2C | Bitplane 5
$30 | Bitplane 0 Current
$34 | Bitplane 1
$38 | Bitplane 2
$3C | Bitplane 3
$40 | Bitplane 4
$44 | Bitplane 5
$48 | Bitplane control - misc. control bits (value of BPLCON0)
$4A | Bitplane control - screen mode setting (value of BPLCON2)
$4C | Screen Width
$4E | Screen Height
$50 | Depth (no. of bitplanes)
$52 | X hardware display position
$54 | Y hardware display position + $1000
    |   (actual position = Deek(Screen Base+$54)-$1000
$56 | Width of displayed area of screen in low-res pixels
    |   (2 hi-res pixels for each low-res pixel)
$58 | Height of displayed area of screen
$5A | X screen offset
$5C | Y screen offset
$5E | Number of colors
$62 | Color 0
$64 | Color 1
$66 | Color 2
$68 | Color 3
$6A | Color 4
$6C | Color 5
$6E | Color 6
$70 | Color 7
$72 | Color 8
$74 | Color 9
$76 | Color 10
$78 | Color 11
$7A | Color 12
$7C | Color 13
$7E | Color 14
$80 | Color 15
$82 | Color 16
$84 | Color 17
$86 | Color 18
$88 | Color 19
$8A | Color 20
$8C | Color 21
$8E | Color 22
$90 | Color 23
$92 | Color 24
$94 | Color 25
$96 | Color 26
$98 | Color 27
$9A | Color 28
$9C | Color 29
$9E | Color 30
$A0 | Color 31
$A2 | ???
$A4 | ???
$A6 | Byte count per bitplane
$AA | ???
$AE | Last pixel on line
$B0 | Last line of screen
$B2 | BPL1MOD & BPL2MOD value
$B4 | Various screen flags:
    |      Bit 13 = Double Buffer on/off  		 $2000  %00100000 00000000
    |      Bit 14 = Cloned screen??  (see "equ.s")       $4000  %01000000 00000000
    |      Bit 15 = Used by Dual Playfield & Screen Hide $8000	%10000000 00000000
    |                           \---- cache le deuxieme
$B6 | Dual Playfield setting
$B8 | 1st pixel (as hardware co-ord) +1
$BA | Screen width (low-res pixels)
$BC | Screen number
$BE | Autoback setting