1
0
mirror of https://github.com/KarolS/millfork.git synced 2025-01-10 20:29:35 +00:00

Document Lynx

This commit is contained in:
Karol Stasiak 2019-09-20 01:44:18 +02:00
parent b74974dbdd
commit 1347be51ae
7 changed files with 48 additions and 1 deletions

View File

@ -8,6 +8,8 @@
* Added full 16-bit multiplication and unsigned division.
* Added preliminary support for Atari Lynx (thanks to @Nullious)
* Added preliminary support for EasyFlash.
* Added preliminary support for Commander X16.

View File

@ -20,7 +20,7 @@ For build instructions, see [Build instructions](./COMPILING.md).
* other Commodore computers: C16, Plus/4, C128, PET, VIC-20 (stock or with RAM extensions)
* other 6502-based machines: Famicom/NES, Atari 8-bit computers, BBC Micro, Apple II+/IIe/Enhanced IIe, Atari 2600 (experimental), Commander X16 (experimental)
* other 6502-based machines: Famicom/NES, Atari Lynx, Atari 8-bit computers, BBC Micro, Apple II+/IIe/Enhanced IIe, Atari 2600 (experimental), Commander X16 (experimental)
* Z80-based machines: ZX Spectrum 48k, NEC PC-88, Amstrad CPC, MSX

View File

@ -61,6 +61,8 @@ The compiler emits NES files.
For more complex programs, you need to create your own "platform" definition.
Read [the NES programming guide](./famicom-programming-guide.md) for more info.
* `atari_lynx` Atari Lynx
* `vcs` Atari VCS (also known as Atari 2600), 4K cartridge (experimental)
* `a8` Atari 8-bit computers.

View File

@ -58,6 +58,8 @@
* [NES-only modules](stdlib/nes.md)
* [Atari Lynx-only modules](stdlib/lynx.md)
* [Game Boyonly modules](stdlib/gb.md)
* [X16only modules](stdlib/x16.md)

36
docs/stdlib/lynx.md Normal file
View File

@ -0,0 +1,36 @@
[< back to index](../doc_index.md)
# Atari Lynx-oriented modules
## atari_lynx_hardware
The `atari_lynx_hardware` module is imported automatically on NES targets.
It also implements a joystick API compatible with the `joy` module.
TODO
#### `void lynx_init()`
TODO
#### `void lynx_wait_suzy()`
TODO
#### `alias input_a = input_btn`
1 if A button pressed, 0 if not pressed.
#### `byte input_b`
1 if B button pressed, 0 if not pressed.
#### `void read_joy()`
Reads the joypad.
#### `void lynx_reset_joy()`
#### `alias reset_joy = lynx_reset_joy!`
Resets the state variables.

View File

@ -49,6 +49,10 @@ how to create a program made of multiple files loaded on demand
* [MMC4 example](nes/nestest_mmc4.mfk) the same thing as above, but uses a MMC4 mapper just to test bankswitching
## Atari Lynx examples
* [Lynx demo example](atari_lynx/atari_lynx_demo.mfk) a simple sprite demo
## Game Boy examples
* [GB test example](gb/gbtest.mfk) a partial port of the NES example, with a rudimentary experimental text output implementation

View File

@ -41,6 +41,7 @@ nav:
- cbm_file module: stdlib/cbm_file.md
- C64-only modules: stdlib/c64.md
- NES-only modules: stdlib/nes.md
- Lynx-only modules: stdlib/lynx.md
- Game Boyonly modules: stdlib/gb.md
- X16only modules: stdlib/x16.md
- Implementation details: