Jet Set Willy: Data at D500

| Data

D500: Room 0x15: Ballroom West (teleport: 1359)

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.
D500 | DEFB $00,$00,$00,$00,$00,$00,$00,$0A | Room layout
D508 | DEFB $00,$00,$00,$00,$00,$00,$00,$0A
D510 | DEFB $00,$00,$00,$00,$00,$00,$00,$0A
D518 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
D520 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
D528 | DEFB $55,$55,$55,$55,$55,$55,$55,$55
D530 | DEFB $00,$00,$A0,$00,$00,$00,$00,$00
D538 | DEFB $00,$00,$A0,$00,$00,$00,$00,$00
D540 | DEFB $00,$00,$A0,$00,$00,$00,$55,$55
D548 | DEFB $00,$00,$A0,$00,$00,$00,$00,$00
D550 | DEFB $00,$00,$A0,$00,$00,$00,$00,$00
D558 | DEFB $00,$00,$A0,$00,$00,$00,$00,$00
D560 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
D568 | DEFB $00,$00,$00,$00,$00,$00,$00,$00
D570 | DEFB $55,$55,$55,$55,$55,$55,$55,$55
D578 | DEFB $AA,$AA,$AA,$AA,$AA,$AA,$AA,$AA
The next 32 bytes are copied to 8080 and specify the room name.
D580 | DEFM " Ballroom West " | 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.
D5A0 | DEFB $00,$00,$00,$00,$00,$00,$00,$00,$00 | Background
D5A9 | DEFB $32,$AA,$A8,$AD,$AF,$20,$AA,$55,$55 | Floor
D5B2 | DEFB $23,$11,$22,$88,$11,$44,$88,$22,$44 | Wall
D5BB | DEFB $42,$28,$54,$AA,$54,$A8,$54,$14,$2E | Nasty (unused)
D5C4 | DEFB $07,$C0,$C0,$30,$B0,$0C,$0C,$03,$0B | Ramp
D5CD | DEFB $46,$FF,$FF,$FF,$AA,$55,$18,$18,$18 | Conveyor
The next four bytes are copied to 80D6 and specify the direction, location and length of the conveyor.
D5D6 | DEFB $01 | Direction (right)
D5D7 | DEFW $5FB0 | Location in the attribute buffer at 5E00: (13,16)
D5D9 | DEFB $0C | Length
The next four bytes are copied to 80DA and specify the direction, location and length of the ramp.
D5DA | DEFB $00 | Direction (up to the left)
D5DB | DEFW $5FA3 | Location in the attribute buffer at 5E00: (13,3)
D5DD | DEFB $04 | Length
The next byte is copied to 80DE and specifies the border colour.
D5DE | DEFB $01 | Border colour
The next two bytes are copied to 80DF, but are not used.
D5DF | DEFB $00,$00 | Unused
The next eight bytes are copied to 80E1 and define the item graphic.
D5E1 | DEFB $04,$04,$AE,$AE,$A2,$42,$42,$EE | Item graphic
The next four bytes are copied to 80E9 and specify the rooms to the left, to the right, above and below.
D5E9 | DEFB $16 | Room to the left (To the Kitchens Main Stairway)
D5EA | DEFB $14 | Room to the right (Ballroom East)
D5EB | DEFB $1B | Room above (The Chapel)
D5EC | DEFB $00 | Room below (The Off Licence)
The next three bytes are copied to 80ED, but are not used.
D5ED | 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.
D5F0 | DEFB $21,$18 | Guardian no. 0x21 (horizontal), base sprite 0, initial x=24 (A108)
D5F2 | DEFB $28,$0E | Guardian no. 0x28 (vertical), base sprite 0, x=14 (A140)
D5F4 | DEFB $2A,$06 | Guardian no. 0x2A (vertical), base sprite 0, x=6 (A150)
D5F6 | DEFB $FF,$00 | Terminator (A3F8)
D5F8 | DEFB $00,$00 | Nothing (A000)
D5FA | DEFB $00,$00 | Nothing (A000)
D5FC | DEFB $00,$00 | Nothing (A000)
D5FE | DEFB $00,$00 | Nothing (A000)