Next Previous Contents

7. Loadable drivers

The names in the parentheses denote the symbols to be used for static linking of the drivers.

7.1 Graphics drivers

a2e.lo.tgi (apple2_40_48_16)

This driver features a resolution of 40×48 with 16 colors.

The function tgi_apple2_mix() allows to activate 4 lines of text. The function clears the corresponding area at the bottom of the screen.

a2e.hi.tgi (apple2_280_192_8)

This driver features a resolution of 280×192 with 8 colors and two hires pages. Note that programs using this driver will have to be linked with --start-addr $4000 to reserve the first hires page or with --start-addr $6000 to reserve both hires pages.

Note that the second hires page is only available if the text display is not in 80 column mode. This can be asserted by calling videomode (VIDEOMODE_40COL); before installing the driver.

The function tgi_apple2_mix() allows to activate 4 lines of text. The function doesn't clear the corresponding area at the bottom of the screen.

In memory constrained situations the memory from $803 to $1FFF can be made available to a program by calling _heapadd ((void *) 0x0803, 0x17FD); at the beginning of main(). Doing so is beneficial even if the program doesn't use the the heap explicitly because loading the driver (and in fact already opening the driver file) uses the heap implicitly.

7.2 Extended memory drivers

a2e.auxmem.emd (apple2_auxmem)

Gives access to 47.5 KB RAM (190 pages of 256 bytes each) on an Extended 80-Column Text Card.

Note that this driver doesn't check for the actual existence of the memory and that it doesn't check for ProDOS 8 RAM disk content!

7.3 Joystick drivers (apple2_stdjoy)

Supports up to two standard analog joysticks connected to the game port of the enhanced Apple //e.

7.4 Mouse drivers

a2e.stdmou.mou (apple2_stdmou)

Driver for the AppleMouse II Card. Searches all Apple II slots for an AppleMouse II Card compatible firmware. The default bounding box is [0..279,0..191].

Note that the enhanced Apple //e default mouse callbacks support text mode only.

7.5 RS232 device drivers

a2e.ssc.ser (apple2_ssc)

Driver for the Apple II Super Serial Card. Supports up to 19200 baud, hardware flow control (RTS/CTS) and interrupt driven receives. Note that because of the peculiarities of the 6551 chip transmits are not interrupt driven, and the transceiver blocks if the receiver asserts flow control because of a full buffer.

The driver defaults to slot 2. Call ser_apple2_slot() prior to ser_open() in order to select a different slot. ser_apple2_slot() succeeds for all Apple II slots, but ser_open() fails with SER_ERR_NO_DEVICE if there's no SSC firmware found in the selected slot.

Next Previous Contents