mirror of
https://github.com/KarolS/millfork.git
synced 2024-10-31 14:04:58 +00:00
101 lines
2.8 KiB
Markdown
101 lines
2.8 KiB
Markdown
[< back to index](../doc_index.md)
|
|
|
|
Definitions on the following list are frequently provided by the default automatically-imported modules.
|
|
|
|
However, as they are not the part of the standard library, they might not be available on all targets:
|
|
|
|
#### `void init_rw_memory()`
|
|
|
|
Initializes all writable arrays and variables with their initial values.
|
|
|
|
If the preprocessor feature `INIT_RW_MEMORY` is defined and non-zero,
|
|
then `init_rw_memory` is available and should be called before accessing any preinitialized writable object.
|
|
|
|
If the preprocessor feature `INIT_RW_MEMORY` is not defined or is zero,
|
|
then `init_rw_memory` is not available.
|
|
|
|
#### `void putchar(byte char)`
|
|
|
|
Prints a single character.
|
|
|
|
Available for: all computer targets.
|
|
Uses ROM routines, so requires the appropriate ROM to be enabled if applicable.
|
|
|
|
Note that this function may obey typical platform idiosyncrasies, for example:
|
|
|
|
* on Commodore PET targets the quote character toggles the quotation mode
|
|
|
|
* printing past the end of line might insert a blank line below the current one
|
|
|
|
* printing past the end of the screen might ask the user to confirm scrolling
|
|
|
|
The exact behaviour is platform-dependent.
|
|
Future library versions will strive to eliminate those issues.
|
|
|
|
#### `void new_line()`
|
|
|
|
Moves the cursor to the next line.
|
|
|
|
Available for: all computer targets.
|
|
Uses ROM routines, so requires the appropriate ROM to be enabled if applicable.
|
|
|
|
#### `pointer readline()`
|
|
|
|
Reads a line from the console and returns a pointer to a null-terminated string.
|
|
The string is valid only until next read from the console.
|
|
|
|
Available for:
|
|
ZX Spectrum,
|
|
NEC PC-88,
|
|
MSX,
|
|
Apple II,
|
|
Robotron Z1013 (always trims trailing spaces),
|
|
TRS-80,
|
|
VIC-20 (except for `vic20_a000`),
|
|
Commodore 64 with `c64_basic` module (requires KERNAL and BASIC; empty input is treated like a single space),
|
|
Commodore 16 or Plus/4 with `c264_basic` module (requires KERNAL and BASIC; empty input is treated like a single space).
|
|
|
|
#### `word readword()`
|
|
|
|
Reads a 16-bit unsigned integer from the console.
|
|
|
|
Available for:
|
|
ZX Spectrum,
|
|
NEC PC-88,
|
|
MSX,
|
|
Apple II,
|
|
Robotron Z1013,
|
|
TRS-80,
|
|
VIC-20 (except for `vic20_a000`),
|
|
Commodore 64 with `c64_basic` module (requires KERNAL and BASIC),
|
|
Commodore 16 or Plus/4 with `c264_basic` module (requires KERNAL and BASIC).
|
|
|
|
#### `void bell()`
|
|
|
|
Beeps.
|
|
|
|
Available for: Apple 2, ZX Spectrum.
|
|
Uses ROM routines, so requires the appropriate ROM to be enabled if applicable.
|
|
|
|
#### `void set_bg_color(byte color)`
|
|
|
|
Sets the screen background color.
|
|
|
|
Available for: C64, VIC-20, C64, C128, C264 series.
|
|
|
|
#### `void set_border(byte color)`
|
|
|
|
Sets the screen border color.
|
|
|
|
Available for: VIC-20, C64, C128, C264 series, ZX Spectrum.
|
|
|
|
#### `const byte black, white, red, green, blue, cyan, purple, yellow`
|
|
|
|
Various colour constants.
|
|
|
|
Available for: VIC-20, C64, C128, C264 series, ZX Spectrum.
|
|
|
|
|
|
|
|
|