EMMA 02

XML CODE

  • Home
  • Download
  • Change Log
  • Help
  • Compilation
    • Windows
    • OS X
    • Ubuntu
    • Fedora
    • openSUSE
  • Forums
  • Tape Conversion
  • Machine Code
    • SYSTEM00
    • CDP1801
    • CDP1802
    • CDP1804
    • CDP1805
    • Differences
  • Pseudo Code
    • AMVBAS
    • AM4KBAS
    • CARDTRAN
    • Chip-8, 8X, ETI-660 & Elf
    • FEL-1
    • FPA-1
    • FPL-2
    • FPL-4
    • GPL-2
    • GPL-3
    • GPL-4
    • GPL-A (2K RAM)
    • GPL-A (2K ROM)
    • ST2
    • ST4
    • STK
    • Test-Word
    • Super-chip
  • XML Code
    • Main Elements
    • I/O
    • System
    • A/D Convertor
    • BASIC
    • Batch wav
    • Bootstrap
    • Cassette
    • CD4536B
    • CDP1851
    • CDP1852
    • CDP1854
    • CDP1855
    • CDP1877
    • CDP1878
    • CDP1879
    • Debugger
    • COMX Diagnostic
    • Dip switch
    • Disk
    • EF Buttons
    • Flip Flop
    • Front Panel
    • GUI
    • HEX Modem
    • I/O Group
    • Keyboard
    • Keyfile
    • Locations
    • Memory
    • MM57109
    • Printer
    • RTC
    • Sound
    • Splash
    • USB
    • Video
    • Videodump
    • vt
    • X Modem
  • BASIC
    • General Information
    • COMX BASIC V1.00
    • Floating Point BASIC 2.2
    • Pecom 32 BASIC
    • Pecom 64 BASIC 1.0 & 4.0
    • Quest Super BASIC 1.4
    • Quest Super BASIC 3.0
    • Quest Super BASIC 5.0
    • Quest Super BASIC 6.0
    • RCA BASIC3 V1.1
    • Telmac SBASIC v24.3
    • Error Messages
  • Computer List

 

 

 

 

 

 

 

 

 

 

 

 

Element: keypad

Basic keypad definition. The type attribute defines one of the different keypad HW configurations:

  • elf (Cosmac Elf)
  • latch (using attribute pad with value 1/2 or a/b)
  • fred (FRED 1 or 1.5)
  • hug or eti (both configure the same keypad as used for the ETI-660, HUG1802 or HEC1802)
  • cv (Cybervision or large keypad)
  • bit (keypad using one bit per key, pad with value 1/2 or a/b)

Type: elf

Keypad definition for the Cosmac Elf.

child element attribute value description
ef pol, q ef flag (1 to 4) Cosmac Elf keypad EF flag. With type="in_elf" the port will be configured for the IN button. With type="ready" (or "data") the port will be configured for the data ready signal. For details about attribute and value usage see XML - I/O.
in mask, q port (1 to 7) Cosmac Elf keypad input port definition to read data. For details about attribute and value usage see XML - I/O.
iogroup group number (8 bit) Cosmac Elf keypad iogroup definition. For details about value usage see XML - I/O.

Type: latch

Keypad definition for a solution using a key latch (using attribute pad with value 1/2 or a/b).

child element attribute value description
auto on / off Default off, but when using 'on' a keydefinition file is loaded to set the keymap automatically.
diagonal key1, key2 Activate diagonal direction key, the specified key will be emulated if key x and key y are pressed. All specified keys are key values as used in the emulated computer. See Studio II xml file for an example.
ef pol, q ef flag (1 to 4) Latch keypad EF flag, active when latched key is pressed definition. For details about attribute and value usage see XML - I/O.
keydef out, type raw ASCII key value / predefined key text When attribute out="x" represents the key latch to be mapped to the given raw (shift, ctrl keys are ignored) ASCII PC key value (assuming no type attribute is used). A type attribute can be used to activate the following options:
  • type="text": the key latch (in out="x") is mapped to the given predefined PC key (alt_right - option on Mac and alt on windows, ctrl_left - command on Mac and ctrl on windows, ctrl_right, alt_left, hift, caps, switch - switch alt and ctrl, used on TMC-600).
  • type="shift": the key latch (in out="x") is mapped to the given raw (shift, ctrl keys are ignored) ASCII PC key value but only if SHIFT is also pressed.
  • type="force": used to load specified file to check auto keydefinitions, use check="ROM" field or check="RAM" to indicate which file shoulw use the keydefiniton. If not use keydefinition.txt will be used.
  • type="file": used for the CTRL V feature to map specified ASCII value to a raw key code. This can be used on its own or in combination with type="shift" and/or out="x".
  • type="map": used for the CTRL V feature to map specified ASCII value to a raw key code. This can be used on its own or in combination with type="shift" and/or out="x".
iogroup group number (8 bit) Latch keypad iogroup definition. For details about value usage see XML - I/O.
out mask, q port (1 to 7) Latch keypad output port definition to set the key latch . For details about attribute and value usage see XML - I/O.

Type: fred

Keypad definition for FRED 1 or 1.5.

child element attribute value description
ef mode, pol, q, type ef flag (1 to 4) FRED keypad EF flag definition. When attribute type="key" a data ready flag is configured. For a data ready flag, atttibute mode="x" sets in which ef mode data ready is used (default 1, keypad mode). When attribute type="error" or "coin", a tape error flag is configured. When a Coin Arcade input port is defined the data ready flag will also function as fire player A flag and the tape error flag will function as a coin flag. When attribute type="fireb", a Coin Arcade fire player B flag is configured. For details about attribute and value usage see XML - I/O.
in mask, mode, q, type port (1 to 7) FRED keypad input port definition. When attribute type="key" a keypad read data port is configured. For a keypad port, atttibute mode="x" sets in which input mode keypad data is read (default 1, keypad mode). When attribute type="coin", a Coin Arcade input port is configured. For details about attribute and value usage see XML - I/O.
iogroup group number (8 bit) FRED keypad iogroup definition. For details about value usage see XML - I/O.
mode byte (byte mode), hex (hex mode), p-hex (hex pulse mode) Select input mode.
out mask, q port (1 to 7) FRED keypad output port definition to select mode (program or direct mode) . For details about attribute and value usage see XML - I/O.

Type: hug or eti

Keypad definition for the ETI-660, HUG1802 or HEC1802.

child element attribute value description
caps Force uppercase (do not specify for normal operation).
ef pol, q ef flag (1 to 4) ETI-660, HUG1802 or HEC1802 keypad EF flag definition to step key signal. For details about attribute and value usage see XML - I/O.
in mask, q port (1 to 7) ETI-660, HUG1802 or HEC1802 keyboard input port definition to read the pia port. For details about attribute and value usage see XML - I/O.
iogroup group number (8 bit) ETI-660, HUG1802 or HEC1802 keypad iogroup definition. For details about value usage see XML - I/O.
out mask, q port (1 to 7) ETI-660, HUG1802 or HEC1802 keypad output port definition to write to the pia port. For details about attribute and value usage see XML - I/O.

Type: cv

Keypad definition for the Cybervision or a large keypad.

child element attribute value description
ef pol, q ef flag (1 to 4) Cybervision keypad EF flag definition for data ready flag. For details about attribute and value usage see XML - I/O..
in mask, q port (1 to 7) Cybervision keypad input port definition to read data. For details about attribute and value usage see XML - I/O.
iogroup group number (8 bit) Cybervision keypad iogroup definition. For details about value usage see XML - I/O.
keydef type, value Attribute value defines the input code for specified PC key. Use type="text", for predefined keys: return, end, home, esc, back, up, down, left or right.
pad mask shift, control, alt, cmd (same as control), caps Defines the key to activate keypad 2, mask indicates the bit to be set when keypad 2 is active.

Type: bit

Keyboard definition for a bit keypad (using one bit per key, pad with value 1/2 or a/b).

child element attribute value description
bit key bit numbers (0 to 7 Attribute key defines the ASCII code for key defined on the specific bit number(s). Multiple bit numbers can be defined for the same key, to do so use multiple numbers separated by a comma.
bitX ef ASCII key code X=0 to 7 defines the bit number to define to the specififed ASCII key code. Attribute ef is used to force a SHIFT or CONTROL. For an example see the VIP2K xml file
in mask, q port (1 to 7) Bit keypad input port to read data keypad / row. For details about attribute and value usage see XML - I/O.
iogroup group number (8 bit) Bit keypad iogroup definition. For details about value usage see XML - I/O.
pressed 0 or 1 Bit value defining a pressed key
repeat on / off Turn repeat feature off (on is default)