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: locations

Locations is used to define certain triggers to the emulator based on execution address and optionally specific values in one or multiple memory locations.

All address values can be defined as multiple addresses, to do so use multiple addresses separated by a comma.

All address and value attributes specify one or multiple address locations with values. If these match in memory the trigger is active, if not it is skipped. In below example the set_dos_filename trigger will only be active if address 0xc0001=0x3, 0x42d2=0xc2 and 0x42d3=0xcf.

<set_dos_filename address="0xc001, 0x42d2, 0x42d3" value="0x3, 0xc2, 0xcf">0xcda1</set_dos_filename>

The same is valid for reg and value attributes which specify one or multiple registers with values. If these at the time of the triggger it is active, if not it is skipped. In below example the fred_tape_rec trigger will only be active if register 5=0xca.

<fred_tape_rec reg="5" value="0xca">0x13b</fred_tape_rec>

child element attribute value description
basic_state address, value address(es) (16 bit) Defines address to detect if the running emulated computer is in BASIC state. This is used in memory accesss functions.
basic_state_cw address, value address(es) (16 bit) Defines address to detect if the running emulated computer is in Cybervision BASIC state. This is used in memory accesss functions.
batch_end_save address, value address(es) (16 bit) Defines address to detect end of save during the batch wav conversion feature.
batch_start_save address, value address(es) (16 bit) Defines address to detect start of save during the batch wav conversion feature.
check_sw address, value address(es) (16 bit) Check if specified attrbute addrress(es) match the given values at specified execution address. If these are then the st2_buildin_game or vic_buildin_game child element will be activated (if specified).
code_start address(es) (16 bit) Defines address location where code is supposed to be started. This is used in load and save features, specifically for the HUG1802, ETI-660 adn HEC1802. This is only active if code_start_high and code_start_low are defined as well.
code_end_high address(es) (16 bit) Location where high byte of the code start location is stored. This is used in load and save features, specifically for the HUG1802, ETI-660 adn HEC1802. This is only active if code_end_low is defined as well. For this feature to work properly also reg_end should be specified.
code_end_low address(es) (16 bit) Location where low byte of the code start location is stored. This is used in load and save features, specifically for the HUG1802, ETI-660 adn HEC1802. This is only active if code_end_high is defined as well. For this feature to work properly also reg_end should be specified.
code_start_high address(es) (16 bit) Location where high byte of the code start location is stored. This is used in load and save features, specifically for the HUG1802, ETI-660 adn HEC1802. This is only active if code_start_low is defined as well.
code_start_low address(es) (16 bit) Location where low byte of the code start location is stored. This is used in load and save features, specifically for the HUG1802, ETI-660 adn HEC1802. This is only active if code_start_high is defined as well.
cv_tape_ff address, value address(es) (16 bit) Defines address to detect Cybervision tape fast forward.
cv_tape_play address, value address(es) (16 bit) Defines address to detect Cybervision tape play.
cv_tape_rec address, value address(es) (16 bit) Defines address to detect Cybervision tape recording.
elfosboot address, value address(es) (16 bit) Defines address to detect ElfOs boot. Used to activate HEX or XMODEM activation
fred_tape_rec reg, value address(es) (16 bit) Defines address to detect FRED tape recording.
in_release address(es) (16 bit) Defines address to simulte the Elf IN button release. This is used in Super BASIC 1.4 serial mode to release the IN button during startup. Only supported in VT mode.
key_input address(es) (16 bit) Defines one of the addresses where the emulated computer is waiting for key input. This is used in key file, ctrl-v and memory accesss LOAD and RUN functions.
reg_end adjust register (8 bit) Defines register that contains the end addres on end of the casstte load routine. This is used in load and save features, specifically for the HUG1802, ETI-660 adn HEC1802. This is only active if code_start_high and code_start_low are defined as well. Attribute adjust can contain the value the register should be adjusted with. For the HUG1802 register is 0xE and adjust value -1.
reset_state address, value address(es) (16 bit) Defines address to detect if the running emulated computer is in reset state. This is used in memory accesss functions.
run_state address, value address(es) (16 bit) Defines address to detect if the running emulated computer is in RUN state (i.e., if a program is running). This is used in memory accesss functions.
set_dos_filename address, value address(es) (16 bit) Defines address to detect end COMX DOS LOAD, RUN or URUN commands. This is used to show the loaded filename in the emulated window.
set_pseudo_am4kbas1978 info address(es) (16 bit) Defines PSEUDO debugger am4kbas1978 which activates when executing at specified address. Attribyte info is used to set the pseudo main loop address.
set_pseudo_am4kbas2020 info address(es) (16 bit) Defines PSEUDO debugger am4kbas2020 which activates when executing at specified address. Attribyte info is used to set the pseudo main loop address.
start_binmodem_load address, value address(es) (16 bit) Defines address to detect trigger to start BIN MODEM load. This is used for automatic BIN MODEM start.
start_binmodem_save address, value address(es) (16 bit) Defines address to detect trigger to start BIN MODEM save. This is used for automatic BIN MODEM start.
start_chip8 address, info, value address(es) (16 bit) Defines address to detect Chip-8 start. This is used to activate the Chip-8 debugger when Chip-8 is started from ElfOs. Attribute info defines the chip-8 main loop address.
start_hexmodem_load address, value address(es) (16 bit) Defines address to detect trigger to start HEX MODEM load. This is used for automatic HEX MODEM start.
start_hexmodem_save address, value address(es) (16 bit) Defines address to detect trigger to start HEX MODEM save. This is used for automatic HEX MODEM start.
start_cas_dload address, value address(es) (16 bit) Defines address to detect trigger to start cassette data load. This is used for automatic tape start.
start_cas_load address, value address(es) (16 bit) Defines address to detect trigger to start cassette load. This will clear any loaded filename shown in the emulated window. This is used for automatic tape start.
start_cas_save address, value address(es) (16 bit) Defines address to detect trigger to start cassette save. This is used for automatic tape start.
start_fm_basic address, value address(es) (16 bit) Defines address to detect COMX F&M BASIC start. This is used for memory accesss functions.
start_thermal address, value address(es) (16 bit) Defines address to detect trigger to start thermal printer output.
start_xmodem_load address, value address(es) (16 bit) Defines address to detect trigger to start XMODEM load. This is used for automatic XMODEM start.
start_xmodem_save address, value address(es) (16 bit) Defines address to detect trigger to start XMODEM save. This is used for automatic XMODEM start.
start_ymodem_save address, value address(es) (16 bit) Defines address to detect trigger to start YMODEM save. This is used for automatic YMODEM start.
st2_buildin_game info, reg, value address(es) (16 bit) Load the key definition for the build in Studio II games at specified address. Attribute info indicates activated build in game (matching the current key press). This is only done if the values specified in check_sw are defined in the ROM.
stop_cas address, value address(es) (16 bit) Defines address to detect trigger to stop cassette load or save. This is used for automatic tape stop.
stop_cas_micro address, value address(es) (16 bit) Defines address to detect trigger to stop cassette load or save for the Microboard computers. This is used for automatic tape stop.
stop_fm_basic address, value address(es) (16 bit) Defines address to detect COMX F&M BASIC end. This is used for memory accesss functions.
stop_modem address, value address(es) (16 bit) Defines address to detect trigger to stop BIN, HEX, X, or Y MODEM load or save. This is used for automatic MODEM stop.
stop_thermal address, value address(es) (16 bit) Defines address to detect trigger to stop thermal printer output.
ut_state address, value address(es) (16 bit) Defines address to detect if the running emulated computer is running the UT program. This is used in memory accesss functions.
vic_buildin_game info, reg, value address(es) (16 bit) Load the key definition for the build in Victory games at specified address. Attribute info indicates activated build in game (matching the current key press). This is only done if the values specified in check_sw are defined in the ROM.
vis_buildin_game info, reg, value address(es) (16 bit) Load the key definition for the build in Visicom games at specified address. Attribute info indicates activated build in game (matching the current key press). This is only done if the values specified in check_sw are defined in the ROM.
write_address function, value address(es) (16 bit) Debug on a specific write value into RAM, when this happens Emma 02 will show the crrent execution address as well as given debug address and value on the Configuration tab. Attribute function should be "debug".