Temporary storage for POT routine
During execution of the POT function routine [$824D], the potentiometer reading from the SID chip register is stored here temporarily while the paddle buttons are being read.
176
$12F6-$12F9 4854-4857
4787-4790 $12B3-$12B6 WINDOW_TEMPS
Temporary parameter storage for WINDOW statement
When the WINDOW statement [$72CC] is executed, the pa- rameter values associated with the statement are stored in these locations before the screen editor WINDOW routine [$C02D] is called to actually set the new window margins. Location Parameter 4787/$12B3 left column 4788/$12B4 top row 4789/$12B5 right column 4790/$12B6 bottom row
4791-4806 $12B7-$12C6
Filename buffer for DOS support commands
The routine which handles the BASIC 7.0 DOS support com- mands such as SCRATCH and RENAME copies the filename portion of the command here temporarily while the remainder of the command is being processed. Once the command is set up, the filename here is copied into the DOS command buffer at 4352-4399/$1100-$112F.
4791-4853 $12B7-$12F5 SAVRAM
Sprite pattern storage
These locations are used during the SPRDEF statement routine [$7372] to hold the original sprite pattern while a sprite is be- ing defined. If the STOP key is pressed to cancel the current modifications, the pattern definition here will be restored to the definition area for the sprite. The first 63 of these locations are also used during the SPRSAV routine [$76EC] to hold the sprite pattern to be transferred to a string variable.
4854-4857 $12F6-$12F9
Sprite pattern suffix
During the SPRSAV routine [$76EC], these locations are ini- tialized with the pattern $17 $00 $14 $00. When a sprite pat- tern is saved in a string variable, these bytes are appended to the sprite pattern in 4791-4853/$12B7-$12F5 before the data is transferred to the string pool. Two bytes are needed as the tag for the variable, but exactly what this four-byte pattern is intended to achieve is unclear.
4771-4776 $12A3-$12A8
SOUND output for all three voices. The values in these loca- tions are updated when the contents of 4771-4776/$ 12A3-$12A8 are copied to the entries for the specified voice during execution of the SOUND statement [$71EC].
4771-4776 $12A3-$12A8
Parameters for most recent SOUND statement
These locations are used to assemble the parameters for the current SOUND statement. The SOUND statement must in- clude voice number, frequency, and duration parameters. The remaining parameters are optional; if they are omitted, default values are supplied. The base frequency value is initialized to the specified starting frequency. The locations and default val- ues are as follows:
Parameter Locations Default value Duration 4771-4772/$12A3-$12A4
Frequency 4773-4774/$12A5-$12A6
Minimum frequency 4775-4776/$ 12A7-S12A8 0/$0000
Step direction 4777/$12A9 0/$00 (sweep up) Step size 4778-4779/$ 12AA-S12AB 0/$0000 (no sweep) Base frequency 4780-4781/$12AC-$12AD
Pulsewidth 4782-4783/$12AE-$12AF 2048/S0800 Waveform 4784/$12B0 2/$02 (pulse)
After all the parameters for a SOUND statement have been evaluated and assembled here, the values are transferred to the entries in the table at 4738-4770/$1282-$12A2 for the specified voice. The base frequency value is used as the begin- ning current frequency value.
4785 $12B1 POT_TEMP_1
Temporary storage for POT and PEN routines
This location is used as temporary storage during the routines to perform the BASIC functions POT [$824D1 and PEN
[$82AE].
4786 $ 12B2 POT_TEMP_2
Temporary storage for POT routine
During execution of the POT function routine [$824D], the potentiometer reading from the SID chip register is stored here temporarily while the paddle buttons are being read.
176
$12F6-$12F9 4854-4857
4787-4790 $12B3-$12B6 WINDOW_TEMPS
Temporary parameter storage for WINDOW statement
When the WINDOW statement [$72CC] is executed, the pa- rameter values associated with the statement are stored in these locations before the screen editor WINDOW routine [$C02D] is called to actually set the new window margins. Location Parameter 4787/$12B3 left column 4788/$12B4 top row 4789/$12B5 right column 4790/$12B6 bottom row
4791-4806 $12B7-$12C6
Filename buffer for DOS support commands
The routine which handles the BASIC 7.0 DOS support com- mands such as SCRATCH and RENAME copies the filename portion of the command here temporarily while the remainder of the command is being processed. Once the command is set up, the filename here is copied into the DOS command buffer at 4352-4399/$1100-$112F.
4791-4853 $12B7-$12F5 SAVRAM
Sprite pattern storage
These locations are used during the SPRDEF statement routine [$7372] to hold the original sprite pattern while a sprite is be- ing defined. If the STOP key is pressed to cancel the current modifications, the pattern definition here will be restored to the definition area for the sprite. The first 63 of these locations are also used during the SPRSAV routine [$76EC] to hold the sprite pattern to be transferred to a string variable.
4854-4857 $12F6-$12F9
Sprite pattern suffix
During the SPRSAV routine [$76EC], these locations are ini- tialized with the pattern $17 $00 $14 $00. When a sprite pat- tern is saved in a string variable, these bytes are appended to the sprite pattern in 4791-4853/$12B7-$12F5 before the data is transferred to the string pool. Two bytes are needed as the tag for the variable, but exactly what this four-byte pattern is intended to achieve is unclear.
4858
$12FA4858 $12FA DEFMOD
Sprite mode indicator for SPRDEF
This location is used during the SPRDEF statement routine [$7372] to hold a value indicating the mode of the sprite cur- rently being defined. A value here of 0/$00 indicates a stan- dard sprite, while a value of 128/$80 indicates a multicolor sprite.
4859 $ 12FB LINCNT
Sprite pattern line count for SPRDEF
This location is used during the SPRDEF statement routine [$7372] to hold the number of the vertical line (0-20) within the sprite pattern which is currently being defined.
4860 $12FC SPRITE_NUMBER
Sprite number for SPRDEF
This location is used during the SPRDEF statement routine [$7372] to hold the number (0-7) of the sprite currently being defined.