Jet Set Willy: Data at CB00

| Data

CB00: Room 0x0B: The Hall (teleport: 1249)

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.
CB00 | DEFB $00,$00,$00,$00,$00,$00,$00,$00 | Room layout
CB08 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
CB10 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
CB18 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
CB20 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
CB28 | DEFB $AA,$AA,$AA,$AA,$AA,$AA,$AA,$AA
CB30 | DEFB $00,$00,$00,$00,$00,$28,$00,$00
CB38 | DEFB $00,$00,$00,$00,$00,$28,$00,$00
CB40 | DEFB $00,$00,$00,$00,$00,$28,$00,$00
CB48 | DEFB $00,$00,$00,$00,$00,$28,$00,$00
CB50 | DEFB $00,$00,$00,$00,$00,$28,$00,$00
CB58 | DEFB $00,$00,$00,$00,$00,$28,$00,$00
CB60 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
CB68 | DEFB $00,$00,$C0,$C0,$30,$00,$00,$00
CB70 | DEFB $AA,$AA,$AA,$AA,$AA,$AA,$AA,$AA
CB78 | DEFB $AA,$AA,$AA,$AA,$AA,$AA,$AA,$AA
The next 32 bytes are copied to 8080 and specify the room name.
CB80 | DEFM " The Hall " | 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.
CBA0 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00 | Background
CBA9 | DEFB $47,$FF,$AA,$77,$AA,$77,$AA,$55,$AA | Floor (unused)
CBB2 | DEFB $3A,$20,$10,$0E,$C1,$30,$09,$C6,$20 | Wall
CBBB | DEFB $44,$88,$A9,$A9,$BB,$BF,$BF,$BF,$5E | Nasty
CBC4 | DEFB $07,$C0,$C0,$30,$30,$0C,$0C,$03,$03 | Ramp
CBCD | 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.
CBD6 | DEFB $00 | Direction (left)
CBD7 | DEFW $0000 | Location in the attribute buffer at 5E00 (unused)
CBD9 | 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.
CBDA | DEFB $00 | Direction (up to the left)
CBDB | DEFW $5FA5 | Location in the attribute buffer at 5E00: (13,5)
CBDD | DEFB $06 | Length
The next byte is copied to 80DE and specifies the border colour.
CBDE | DEFB $04 | Border colour
The next two bytes are copied to 80DF, but are not used.
CBDF | DEFB $00,$00 | Unused
The next eight bytes are copied to 80E1 and define the item graphic.
CBE1 | 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.
CBE9 | DEFB $14 | Room to the left (Ballroom East)
CBEA | DEFB $0A | Room to the right (The Front Door)
CBEB | DEFB $00 | Room above (The Off Licence)
CBEC | DEFB $00 | Room below (The Off Licence)
The next three bytes are copied to 80ED, but are not used.
CBED | 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.
CBF0 | DEFB $59,$CA | Guardian no. 0x59 (vertical), base sprite 6, x=10 (A2C8)
CBF2 | DEFB $1A,$13 | Guardian no. 0x1A (horizontal), base sprite 0, initial x=19 (A0D0)
CBF4 | DEFB $5F,$13 | Guardian no. 0x5F (horizontal), base sprite 0, initial x=19 (A2F8)
CBF6 | DEFB $45,$44 | Arrow flying right to left at pixel y-coordinate 34 (A228)
CBF8 | DEFB $3C,$16 | Arrow flying left to right at pixel y-coordinate 11 (A1E0)
CBFA | DEFB $FF,$00 | Terminator (A3F8)
CBFC | DEFB $59,$00 | Guardian no. 0x59 (vertical), base sprite 0, x=0 (A2C8) (unused)
CBFE | DEFB $00,$00 | Nothing (A000)