Routines |
Prev: 46873 | Up: Map | Next: 47020 |
|
||||||||
46902 | LD IX,25060 | Point IX at start of temporary text buffer | ||||||
46906 | LD A,255 | Prepare recursion depth counter for loop... | ||||||
46908 | LD (23398),A | ... | ||||||
This entry point is used by the routine at 47049.
|
||||||||
46911 | LD A,(23398) | Increase recursion depth counter... | ||||||
46914 | INC A | ... | ||||||
46915 | LD (23398),A | ... | ||||||
46918 | PUSH HL | Store HL | ||||||
46919 | CALL 63286 | Update attribute virtual text cursor based upon current bitmap virtual text cursor | ||||||
46922 | POP HL | Restore HL | ||||||
46923 | DEC HL | Prepare pointer to text to print for loop | ||||||
46924 | LD A,(23398) | Load A with value in recursion depth counter... | ||||||
46927 | CP 255 | ...and if this is 255 (i.e. no more text to print)... | ||||||
46929 | JP Z,47178 | ...then return (see trivia) | ||||||
46932 | INC HL | Advance to next character code to be printed... | ||||||
46933 | LD A,(HL) | ...and load into A | ||||||
46934 | OR A | If character code is zero (i.e. end marker)... | ||||||
46935 | JP Z,47023 | ...then return from current level of text printing | ||||||
46938 | CP 32 | If character code is 32 (SPACE)... | ||||||
46940 | JP Z,48389 | ...then print word in temporary text buffer to screen, wrapping text if necessary, then jump to 46924 to load next word | ||||||
46943 | CP 31 | If character code is 31... | ||||||
46945 | JP Z,47170 | ...then print the Current Character's short name | ||||||
46948 | CP 30 | If character code is 30... | ||||||
46950 | JP Z,47162 | ...then print the Current Character's full name | ||||||
46953 | CP 29 | If character code is 29... | ||||||
46955 | JP Z,47110 | ...then print the Current Object's name | ||||||
46958 | CP 28 | If character code is 28... | ||||||
46960 | JP Z,47121 | ...then print appropriate Newspaper substring for current required disquise | ||||||
46963 | CP 27 | If character code is 27... | ||||||
46965 | JP Z,47132 | ...then print current Crystal Ball substring | ||||||
46968 | CP 26 | If character code is 26... | ||||||
46970 | JP Z,47143 | ...then print current Scroll substring | ||||||
46973 | CP 25 | If character code is 25... | ||||||
46975 | JP Z,47154 | ...then print the name of the Current Command | ||||||
46978 | CP 19 | If character code is 19... | ||||||
46980 | JP Z,47080 | ...then toggle BRIGHT flag then loop back to 46924 for next data | ||||||
46983 | CP 18 | If character code is 18... | ||||||
46985 | JP Z,47084 | ...then toggle FLASH flag then loop back to 46924 for next data | ||||||
46988 | CP 17 | If character code is 17... | ||||||
46990 | JP Z,47092 | ...then change PAPER colour based upon following data byte then loop back to 46924 for next data | ||||||
46993 | CP 16 | If character code is 16... | ||||||
46995 | JP Z,47096 | ...then change INK colour based upon following data byte then loop back to 46924 for next data | ||||||
46998 | CP 14 | If character code is 14 (carriage return / line feed to start of next character row down within window)... | ||||||
47000 | JP Z,48389 | ...then print word in temporary text buffer to screen, wrapping text if necessary, then jump to 46924 to load next word | ||||||
47003 | CP 13 | If character code is 13 (carriage return / line feed to start of next character row down)... | ||||||
47005 | JP Z,48389 | ...then print word in temporary text buffer to screen, wrapping text if necessary, then jump to 46924 to load next word | ||||||
47008 | CP 91 | If character code is 91 or greater (i.e. special character)... | ||||||
47010 | JP NC,47049 | ...then print an entry from the common words table | ||||||
47013 | LD (IX+0),A | Load character into temporary text buffer | ||||||
47016 | INC IX | Advance to next position in temporary text buffer | ||||||
47018 | JR 46924 | Loop back to 46924 |
Prev: 46873 | Up: Map | Next: 47020 |