Prev: 46218 Up: Map Next: 46284
46244: Table of addresses of graphic layout data handling routines
Graphic layout data is stored in the form of encoded instructions. Generally an instruction is simply to display a graphic of given index with a given attribute and then to advance the position of the drawing "cursor". If the first byte (normally the graphic index) is 236 or greater, however, then we are dealing with a special instruction; the values 236 and above can be considered to be opcodes. These opcodes correspond to calls/jumps to routines at addresses stored in this table. The opcodes all take different combinations of parameters.
Opcode No. of parameters Meaning
236 n + 1 Modify the following instruction to have a graphic index selected at random from the following list of n values
237 1 Set the sound with index given in the parameter as pending
238 1 Store graphic layout data address to mark start of loop A and set repeat counter A to value in parameter
239 0 Decrement repeat counter A and jump back to stored graphic layout data address for start of loop A
240 1 Store graphic layout data address to mark start of loop B and set repeat counter B to value in parameter
241 0 Decrement repeat counter B and jump back to stored graphic layout data address for start of loop B
242 1 Set the current attribute to value in parameter
243 n + 2 Increment index, m, of address to jump to, resetting to zero if above maximum, then jump to m-th graphic layout data address in following list of n addresses
244 1 Set the current graphic set index to value in parameter
245 n + 3 Decrement timer and if zero, reset to maximum and modify the following instruction to have a graphic index selected at random from the following list of n values
246 n + 3 Decrement timer and if zero, reset to maximum and modify the following instruction to have an attribute selected at random from the following list of n values
247 n + 1 Jump to one of the following n graphic layout data addresses chosen at random
248 1 Jump to the given graphic layout data address
249 3n + 2 Jump to time-weighted, randomly selected graphic layout data address in list
250 2 Adjust current x- and y-coordinates for drawing without storing
251 1 Process graphic layout data at given address and return to current position when complete
252 1 If Berk is holding nothing then jump to given graphic layout data address
253 4 Jump to graphic layout data address selected from list, based upon width of entity currently held by Berk
254 2 Adjust x- and y-coordinates for drawing and store at 34281
255 0 Move cursor to stored coordinates and return from drawing
46244 DEFW 46317 (236)
46246 DEFW 46284 (237)
46248 DEFW 46611 (238)
46250 DEFW 46628 (239)
46252 DEFW 46647 (240)
46254 DEFW 46664 (241)
46256 DEFW 46295 (242)
46258 DEFW 46559 (243)
46260 DEFW 46306 (244)
46262 DEFW 46347 (245)
46264 DEFW 46363 (246)
46266 DEFW 46577 (247)
46268 DEFW 46481 (248)
46270 DEFW 46495 (249)
46272 DEFW 46427 (250)
46274 DEFW 46460 (251)
46276 DEFW 46599 (252)
46278 DEFW 46594 (253)
46280 DEFW 46442 (254)
46282 DEFW 46418 (255)
Prev: 46218 Up: Map Next: 46284