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.
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.
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". |