Prev: 7C00 Up: Map Next: 7F72
7F01: Foreground scenery room items
foreground scenery movement
Foreground scenery objects, set up at C501. Address pointer to this data held at 60272.
  • The number of foreground scenery objects in any room is calculated from the room's first data byte, indicating its size (61A9), divided by 2, then rounded down.
  • The largest room size in the game are rooms 42 and 182 (room size = 16), so up to 8 data sets are stored here
  • 255 marks the end of the scenery objects for the current room
Byte Value
1 0 = Item is off-screen
1 = Item is on-screen
255 = End-of-data
2 Item's horizontal offset remainder (fraction of horizontal position used to calculate new position)
3 Item's horizontal position, in single character/8-pixel steps
4 Item's vertical offset remainder (fraction of vertical position used to calculate new position)
5 Vertical position in pixels, from top of playing area - defaulted to 104 at 50530
6 & 7 Address pointer to scenery object graphic address, e.g. AA5A
7F01 DEFB $01,$50,$0E,$00,$72,$2F,$AB Up to 8 foreground object data sets can be stored here
7F08 DEFB $01,$50,$1E,$00,$72,$93,$AB
7F0F DEFB $FF,$20,$30,$40,$71,$E1,$AB
7F16 DEFB $00,$20,$40,$40,$71,$5B,$AA
7F1D DEFB $FF,$00,$0E,$C0,$8B,$93,$AB
7F24 DEFB $FF
The remaining bytes here are the remnants of previous code from the routine that draws the game border at the start of the game.
These bytes can be be overwritten with additional foreground scenery object data.
7F25 DEFB $3E,$1A,$32,$AF,$8B,$3E,$01,$32
7F2D DEFB $B0,$8B,$11,$9F,$82,$21,$E3,$40
7F35 DEFB $CD,$F3,$81,$3E,$01,$32,$AF,$8B
7F3D DEFB $3E,$01,$32,$B0,$8B,$11,$77,$83
7F45 DEFB $21,$C9,$40,$CD,$F3,$81,$3E,$01
7F4D DEFB $32,$AF,$8B,$3E,$01,$32,$B0,$8B
7F55 DEFB $11,$7F,$83,$21,$D0,$40,$CD,$F3
7F5D DEFB $81,$3E,$04,$32,$AF,$8B,$3E,$01
7F65 DEFB $32,$B0,$8B,$11,$87,$83,$21,$D4
7F6D DEFB $40,$CD,$F3,$81
7F71 DEFB $FF
Prev: 7C00 Up: Map Next: 7F72