Jet Set Willy: Data at F400

| Data

F400: Room 0x34: Back Stairway (teleport: 3569)

Used by the routine at 8912.
The first 128 bytes are copied to 8000 and define the room layout. Each bit-pair (bits 7 and 6, 5 and 4, 3 and 2, or 1 and 0 of each byte) determines the type of tile (background, floor, wall or nasty) that will be drawn at the corresponding location.
F400 | DEFB $00,$00,$00,$00,$0A,$AA,$AA,$AA | Room layout
F408 | DEFB $00,$00,$00,$00,$2A,$AA,$AA,$AA
F410 | DEFB $00,$00,$00,$00,$55,$55,$55,$55
F418 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F420 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F428 | DEFB $00,$00,$00,$15,$55,$55,$55,$55
F430 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F438 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F440 | DEFB $00,$00,$05,$55,$55,$55,$55,$55
F448 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F450 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F458 | DEFB $55,$54,$55,$55,$55,$55,$55,$55
F460 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F468 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F470 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
F478 | DEFB $55,$55,$55,$55,$55,$55,$55,$55
The next 32 bytes are copied to 8080 and specify the room name.
F480 | DEFM " Back Stairway " | Room name
The next 54 bytes are copied to 80A0 and contain the attributes and graphic data for the tiles used to build the room.
F4A0 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00 | Background
F4A9 | DEFB $43,$FF,$44,$44,$FF,$11,$11,$FF,$00 | Floor
F4B2 | DEFB $1E,$15,$F1,$8F,$A8,$8A,$F8,$1F,$15 | Wall
F4BB | DEFB $FF,$00,$00,$00,$00,$00,$00,$00,$00 | Nasty (unused)
F4C4 | DEFB $47,$03,$01,$0C,$04,$30,$10,$C0,$40 | Ramp
F4CD | DEFB $FF,$00,$00,$00,$00,$00,$00,$00,$00 | Conveyor (unused)
The next four bytes are copied to 80D6 and specify the direction, location and length of the conveyor.
F4D6 | DEFB $00 | Direction (left)
F4D7 | DEFW $0000 | Location in the attribute buffer at 5E00 (unused)
F4D9 | DEFB $00 | Length: 0 (there is no conveyor in this room)
The next four bytes are copied to 80DA and specify the direction, location and length of the ramp.
F4DA | DEFB $01 | Direction (up to the right)
F4DB | DEFW $5FE2 | Location in the attribute buffer at 5E00: (15,2)
F4DD | DEFB $10 | Length
The next byte is copied to 80DE and specifies the border colour.
F4DE | DEFB $02 | Border colour
The next two bytes are copied to 80DF, but are not used.
F4DF | DEFB $00,$00 | Unused
The next eight bytes are copied to 80E1 and define the item graphic.
F4E1 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | Item graphic (unused)
The next four bytes are copied to 80E9 and specify the rooms to the left, to the right, above and below.
F4E9 | DEFB $35 | Room to the left (Back Door)
F4EA | DEFB $19 | Room to the right (Cold Store)
F4EB | DEFB $36 | Room above (West Wing)
F4EC | DEFB $31 | Room below (The Wine Cellar)
The next three bytes are copied to 80ED, but are not used.
F4ED | DEFB $00,$00,$00 | Unused
The next eight pairs of bytes are copied to 80F0 and specify the entities (ropes, arrows, guardians) in this room.
F4F0 | DEFB $24,$96 | Guardian no. 0x24 (horizontal), base sprite 4, initial x=22 (A120)
F4F2 | DEFB $5C,$90 | Guardian no. 0x5C (horizontal), base sprite 4, initial x=16 (A2E0)
F4F4 | DEFB $1D,$83 | Guardian no. 0x1D (vertical), base sprite 4, x=3 (A0E8)
F4F6 | DEFB $FF,$00 | Terminator (A3F8)
F4F8 | DEFB $00,$00 | Nothing (A000)
F4FA | DEFB $00,$00 | Nothing (A000)
F4FC | DEFB $00,$00 | Nothing (A000)
F4FE | DEFB $00,$00 | Nothing (A000)