• No results found

4588 $11EC UPPER-GRAPHIC

In document Compute's Mapping the Commodore 128 (Page 162-164)

Starting page for default character set during CHAR

The value here determines the starting page in system mem- ory for the default set of characters used during the CHAR statement. The value here doesn't affect any statement other than CHAR, and is used only when character shapes are being placed on a bitmapped screen. (When CHAR is used to place characters on the text screen, the screen editor printing routines are used instead.) For bitmapped screens, CHAR will always begin using the character set pointed to here, regardless of the character set in use on the text screen. To switch to the alter- nate character set (starting page in 4587/$llEB), the CHAR string must include character code 14/$0E. Character code

142/$8E switches back to the character set pointed to here. Thus, it is possible to mix the two character sets in a single CHAR statement. This location is initialized to 208/$D0 dur- ing BASIC cold start. That value makes the ROM uppercase/ graphics set at 53248/$D000 the default character pattern source. If you use a custom character set, you can change the value here to have CHAR use your new characters. However, the new character set must be visible in the bank 14 memory configuration, since that is how the system will be configured when character pattern data is read.

4583-4584

$11E7-$11E8

4583-4584 $11E7-$11E8

Shadows for VIC sprite-collision registers

During any pass through the BASIC IRQ routine [$A84D] where either or both of the sprite-collision latch flags {bits 1-2 of 53273/$D019) are found to be set to % 1 , the contents of the corresponding VIC chip sprite-collision register will be re- corded in these locations. For sprite-foreground collisions (in- dicated when bit 1 of the flag is set), any bits in the register at 53279/$D01F which are set to %1 will also be set to %1 in lo- cation 4584/$llE8. Likewise, for sprite-sprite collisions (indi- cated when bit 2 of the flag is set), the %1 bits in the register at 53278/$D01E will be recorded in location 4583/$llE7. Thus, these locations will accumulate collision readings until they are cleared, rather than simply holding the most recent collision values. The routine for the BASIC function BUMP [$837C] returns values based on the contents of these loca- tions, rather than on the actual register contents. BUMP(l) re- turns the sprite-sprite collision value in 4583/$llE7, and BUMP(2) returns the sprite-foreground collision value in 4584/$llE8. Either location will be reset to 0/$00 after being read by BUMP. Both locations are also initialized to 0/$00 during the BASIC cold-start sequence.

4585-4586 $1lE9-$11EA

Shadow for VIC light pen registers

During any pass through the BASIC IRQ routine [$A84D] where the light pen latch flag (bit 3 of 53273/$D019) is found to be set to % 1 , the contents of the VIC chip light pen regis- ters at 53267-53268/$D013-$D014 will be copied into these locations. The routine for the BASIC function PEN [$82AE] re- turns values based on the contents of these locations, rather than on the actual register contents. PEN(O) returns the value in 4585/S11E9, multiplied by 2. PEN(l) returns the value in 4586/S11EA. Either location will be reset to 0/$00 after being read by PEN. Both of these locations are also initialized to 0/$00 during the BASIC cold-start sequence.

4587 $11EB UPPER-LOWER

Starting page for alternate character set during CHAR

The value here determines the starting page in system mem- ory for the alternate set of characters used during the CHAR

160

$11EC 4588

statement for bitmapped screens (see location 4588/$llEC for more information). CHAR will always begin using the charac- ter set pointed to in location 4588/$llEC. To switch to the al- ternate character set, the CHAR string must include character code 14/$0E. Character code 142/$8E switches back to the default set. This location is initialized to 216/$D8 during BASIC cold start. That value selects the ROM lowercase/ uppercase set at 55296/$D800 as the alternate character pat- tern source. If you use a custom character set, you can change the value here to have CHAR use your new characters. How- ever, the new character set must be visible in the bank 14 memory configuration, since that is how the system will be configured when character pattern data is read.

4588 $11EC UPPER-GRAPHIC

Starting page for default character set during CHAR

The value here determines the starting page in system mem- ory for the default set of characters used during the CHAR statement. The value here doesn't affect any statement other than CHAR, and is used only when character shapes are being placed on a bitmapped screen. (When CHAR is used to place characters on the text screen, the screen editor printing routines are used instead.) For bitmapped screens, CHAR will always begin using the character set pointed to here, regardless of the character set in use on the text screen. To switch to the alter- nate character set (starting page in 4587/$llEB), the CHAR string must include character code 14/$0E. Character code

142/$8E switches back to the character set pointed to here. Thus, it is possible to mix the two character sets in a single CHAR statement. This location is initialized to 208/$D0 dur- ing BASIC cold start. That value makes the ROM uppercase/ graphics set at 53248/$D000 the default character pattern source. If you use a custom character set, you can change the value here to have CHAR use your new characters. However, the new character set must be visible in the bank 14 memory configuration, since that is how the system will be configured when character pattern data is read.

4589 $11ED $1208 4616

4589 SUED DOSSA

Channel number for BASIC relative file operations

The channel number (secondary address) for BASIC relative file operations is stored in this location.

4590-4607 $11EE-$11FF Unused

None of these locations is used by any system ROM routine.

In document Compute's Mapping the Commodore 128 (Page 162-164)