ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
Loading...
Searching...
No Matches
6809.c File Reference
#include "cpu.h"
#include <time.h>
#include <math.h>

Go to the source code of this file.

Macros

#define B(code, label)
#define cpu_BLIT_REGISTER_COUNT   ( sizeof( cpu_BLIT_REGISTER ) / 9 )

Functions

void cpu_init (Environment *_environment)
void cpu_nop (Environment *_environment)
void cpu_ztoa (Environment *_environment)
void cpu_ctoa (Environment *_environment)
void cpu_beq (Environment *_environment, char *_label)
 CPU 6809: emit code to make long conditional jump
void cpu_bneq (Environment *_environment, char *_label)
 CPU 6809: emit code to make long conditional jump
void cpu_bveq (Environment *_environment, char *_value, char *_label)
void cpu_bvneq (Environment *_environment, char *_value, char *_label)
void cpu_label (Environment *_environment, char *_label)
void cpu_peek (Environment *_environment, char *_address, char *_target)
void cpu_poke (Environment *_environment, char *_address, char *_source)
void cpu_poke_const (Environment *_environment, char *_address, int _source)
void cpu_peekw (Environment *_environment, char *_address, char *_target)
void cpu_pokew (Environment *_environment, char *_address, char *_source)
void cpu_pokew_const (Environment *_environment, char *_address, int _source)
void cpu_peekd (Environment *_environment, char *_address, char *_target)
void cpu_poked (Environment *_environment, char *_address, char *_source)
void cpu_poked_const (Environment *_environment, char *_address, int _source)
void cpu_fill_blocks (Environment *_environment, char *_address, char *_blocks, char *_pattern)
 CPU 6809: emit code to fill up a memory area
void cpu_fill (Environment *_environment, char *_address, char *_bytes, int _bytes_width, char *_pattern)
 CPU 6809: emit code to fill up a memory area
void cpu_fill_size (Environment *_environment, char *_address, int _bytes, char *_pattern)
 CPU 6809: emit code to fill up a memory area
void cpu_fill_size_value (Environment *_environment, char *_address, int _bytes, int _pattern)
 CPU 6809: emit code to fill up a memory area
void cpu_fill_direct (Environment *_environment, char *_address, char *_bytes, char *_pattern)
 CPU 6809: emit code to fill up a memory area
void cpu_fill_direct_size (Environment *_environment, char *_address, int _bytes, char *_pattern)
 CPU 6809: emit code to fill up a memory area
void cpu_fill_direct_size_value (Environment *_environment, char *_address, int _bytes, int _pattern)
 CPU 6809: emit code to fill up a memory area
void cpu_move_8bit (Environment *_environment, char *_source, char *_destination)
 CPU 6809: emit code to move 8 bit
void cpu_store_8bit (Environment *_environment, char *_destination, int _value)
 CPU 6809: emit code to store 8 bit
void cpu_store_char (Environment *_environment, char *_destination, int _value)
 CPU 6809: emit code to store 8 bit
void cpu_compare_8bit (Environment *_environment, char *_source, char *_destination, char *_other, int _positive)
 CPU 6809: emit code to compare two 8 bit values
void cpu_compare_8bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _positive)
 CPU 6809: emit code to compare two 8 bit values
void cpu_prepare_for_compare_and_branch_8bit (Environment *_environment, char *_source)
void cpu_compare_and_branch_8bit (Environment *_environment, char *_source, char *_destination, char *_label, int _positive)
void cpu_compare_and_branch_8bit_const (Environment *_environment, char *_source, int _destination, char *_label, int _positive)
 CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different
void cpu_execute_compare_and_branch_8bit_const (Environment *_environment, int _destination, char *_label, int _positive)
 CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different
void cpu_compare_and_branch_char_const (Environment *_environment, char *_source, int _destination, char *_label, int _positive)
 CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different
void cpu_less_than_8bit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _signed)
 CPU 6809: emit code to compare two 8 bit values
void cpu_less_than_8bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _signed)
void cpu_less_than_and_branch_8bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _signed)
void cpu_greater_than_8bit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _signed)
 CPU 6809: emit code to compare two 8 bit values
void cpu_greater_than_8bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _signed)
void cpu_math_add_8bit (Environment *_environment, char *_source, char *_destination, char *_other)
 CPU 6809: emit code to add two 8 bit values
void cpu_math_add_8bit_const (Environment *_environment, char *_source, int _destination, char *_other)
 CPU 6502: emit code to add two 8 bit values
void cpu_math_sub_8bit (Environment *_environment, char *_source, char *_destination, char *_other)
 CPU 6809: emit code to subtract two 8 bit values
void cpu_math_double_8bit (Environment *_environment, char *_source, char *_other, int _signed)
 CPU 6809: emit code to double a 8 bit value
void cpu_math_mul_8bit_to_16bit (Environment *_environment, char *_source, char *_destination, char *_other, int _signed)
 CPU 6809: emit code to multiply two 8bit values in a 16 bit register
void cpu_math_div_8bit_to_8bit (Environment *_environment, char *_source, char *_destination, char *_other, char *_other_remainder, int _signed)
void cpu_math_div_8bit_to_8bit_const (Environment *_environment, char *_source, int _destination, char *_other, char *_other_remainder, int _signed)
void cpu_math_div2_const_8bit (Environment *_environment, char *_source, int _steps, int _signed, char *_remainder)
 CPU 6809: emit code to halves for several times a 8 bit value
void cpu_math_mul2_const_8bit (Environment *_environment, char *_source, int _steps, int _signed)
 CPU 6809: emit code to double for several times a 8 bit value
void cpu_math_complement_const_8bit (Environment *_environment, char *_source, int _value)
 CPU 6809: emit code to calculate an 8 bit complement of a number
void cpu_math_and_const_8bit (Environment *_environment, char *_source, int _mask)
 CPU 6809: emit code to mask with "and" a value of 8 bit
void cpu_move_16bit (Environment *_environment, char *_source, char *_destination)
 CPU 6809: emit code to move 16 bit
void cpu_addressof_16bit (Environment *_environment, char *_source, char *_destination)
void cpu_store_16bit (Environment *_environment, char *_destination, int _value)
 CPU 6809: emit code to store 16 bit
void cpu_compare_16bit (Environment *_environment, char *_source, char *_destination, char *_other, int _positive)
 CPU 6809: emit code to compare two 16 bit values
void cpu_compare_16bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _positive)
 CPU 6809: emit code to compare two 16 bit values
void cpu_compare_and_branch_16bit (Environment *_environment, char *_source, char *_destination, char *_label, int _positive)
void cpu_compare_and_branch_16bit_const (Environment *_environment, char *_source, int _destination, char *_label, int _positive)
 CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different
void cpu_less_than_16bit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _signed)
 CPU 6809: emit code to compare two 8 bit values
void cpu_less_than_16bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _signed)
void cpu_greater_than_16bit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _signed)
 CPU 6809: emit code to compare two 8 bit values
void cpu_greater_than_16bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _signed)
void cpu_math_add_16bit (Environment *_environment, char *_source, char *_destination, char *_other)
 CPU 6809: emit code to add two 16 bit values
void cpu_math_add_16bit_const (Environment *_environment, char *_source, int _destination, char *_other)
 CPU 6502: emit code to add two 16 bit values
void cpu_math_add_16bit_with_16bit (Environment *_environment, char *_source, char *_destination, char *_other)
 CPU 6809: emit code to add two 16 bit values
void cpu_math_add_16bit_with_8bit (Environment *_environment, char *_source, char *_destination, char *_other)
void cpu_math_double_16bit (Environment *_environment, char *_source, char *_other, int _signed)
 CPU 6809: emit code to double a 16 bit value
void cpu_math_mul_16bit_to_32bit (Environment *_environment, char *_source, char *_destination, char *_other, int _signed)
 CPU 6809: emit code to multiply two 16 bit values in a 32 bit register
void cpu_math_mul_nbit_to_nbit (Environment *_environment, char *_source, char *_destination, char *_other, int _bits)
void cpu_math_div_16bit_to_16bit (Environment *_environment, char *_source, char *_destination, char *_other, char *_other_remainder, int _signed)
void cpu_math_div_16bit_to_16bit_const (Environment *_environment, char *_source, int _destination, char *_other, char *_other_remainder, int _signed)
void cpu_math_sub_16bit (Environment *_environment, char *_source, char *_destination, char *_other)
 CPU 6809: emit code to subtract two 16 bit values
void cpu_math_sub_16bit_with_8bit (Environment *_environment, char *_source, char *_destination, char *_other)
void cpu_math_complement_const_16bit (Environment *_environment, char *_source, int _value)
 CPU 6809: emit code to calculate a 16 bit complement of a number
void cpu_math_div2_const_16bit (Environment *_environment, char *_source, int _steps, int _signed, char *_remainder)
 CPU 6809: emit code to halves for several times a 16 bit value
void cpu_math_mul2_const_16bit (Environment *_environment, char *_source, int _steps, int _signed)
 CPU 6809: emit code to halves for several times a 8 bit value
void cpu_math_and_const_16bit (Environment *_environment, char *_source, int _mask)
 CPU 6809: emit code to mask with "and" a value of 16 bit
void cpu_move_32bit (Environment *_environment, char *_source, char *_destination)
 CPU 6809: emit code to move 32 bit
void cpu_store_32bit (Environment *_environment, char *_destination, int _value)
 CPU 6809: emit code to store 32 bit
void cpu_math_div_32bit_to_16bit (Environment *_environment, char *_source, char *_destination, char *_other, char *_other_remainder, int _signed)
void cpu_math_div_nbit_to_nbit (Environment *_environment, char *_source, char *_destination, char *_other, char *_other_remainder, int _bits)
void cpu_math_div_nbit_to_nbit_const (Environment *_environment, char *_source, int _destination, char *_other, char *_other_remainder, int _bits)
void cpu_math_div_32bit_to_16bit_const (Environment *_environment, char *_source, int _destination, char *_other, char *_other_remainder, int _signed)
void cpu_compare_32bit (Environment *_environment, char *_source, char *_destination, char *_other, int _positive)
 CPU 6809: emit code to compare two 32 bit values
void cpu_compare_nbit (Environment *_environment, char *_source, char *_destination, char *_other, int _positive, int _bits)
void cpu_compare_nbit_const (Environment *_environment, char *_source, int _destination, char *_other, int _positive, int _bits)
 CPU 6502: emit code to compare two 32 bit values
void cpu_compare_32bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _positive)
 CPU 6809: emit code to compare two 32 bit values
void cpu_compare_and_branch_32bit_const (Environment *_environment, char *_source, int _destination, char *_label, int _positive)
 CPU 6809: emit code to compare two 32 bit values and jump if they are equal/different
void cpu_less_than_32bit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _signed)
 CPU 6809: emit code to compare two 32 bit values
void cpu_less_than_32bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _signed)
void cpu_less_than_nbit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _bits)
void cpu_less_than_nbit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _bits)
void cpu_greater_than_32bit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _signed)
 CPU 6809: emit code to compare two 8 bit values
void cpu_greater_than_32bit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _signed)
void cpu_greater_than_nbit (Environment *_environment, char *_source, char *_destination, char *_other, int _equal, int _bits)
void cpu_greater_than_nbit_const (Environment *_environment, char *_source, int _destination, char *_other, int _equal, int _bits)
void cpu_math_add_32bit (Environment *_environment, char *_source, char *_destination, char *_other)
 CPU 6809: emit code to add two 32 bit values
void cpu_math_add_nbit (Environment *_environment, char *_source, char *_destination, char *_other, int _bits)
void cpu_math_add_32bit_const (Environment *_environment, char *_source, int _destination, char *_other)
void cpu_math_double_32bit (Environment *_environment, char *_source, char *_other, int _signed)
 CPU 6809: emit code to double a 32 bit value
void cpu_math_sub_32bit (Environment *_environment, char *_source, char *_destination, char *_other)
 CPU 6809: emit code to subtract two 32 bit values
void cpu_math_sub_nbit (Environment *_environment, char *_source, char *_destination, char *_other, int _bits)
void cpu_math_complement_const_32bit (Environment *_environment, char *_source, int _value)
 CPU 6809: emit code to calculate a 32 bit complement of a number
void cpu_math_div2_const_32bit (Environment *_environment, char *_source, int _steps, int _signed, char *_remainder)
 CPU 6809: emit code to halves for several times a 32 bit value
void cpu_math_div2_const_nbit (Environment *_environment, char *_source, int _steps, int _bits, char *_remainder)
void cpu_math_mul2_const_32bit (Environment *_environment, char *_source, int _steps, int _signed)
 CPU 6809: emit code to double for several times a 32 bit value
void cpu_math_mul2_const_nbit (Environment *_environment, char *_source, int _steps, int _bits)
void cpu_math_and_const_32bit (Environment *_environment, char *_source, int _mask)
 CPU 6809: emit code to mask with "and" a value of 32 bit
void cpu_combine_nibbles (Environment *_environment, char *_low_nibble, char *_hi_nibble, char *_byte)
void cpu_jump (Environment *_environment, char *_label)
void cpu_call_addr (Environment *_environment, int _address)
void cpu_call (Environment *_environment, char *_label)
void cpu_call_indirect (Environment *_environment, char *_value)
void cpu_jump_indirect (Environment *_environment, char *_value)
int cpu_register_decode (Environment *_environment, char *_register)
void cpu_set_asmio (Environment *_environment, int _asmio, int _value)
void cpu_set_asmio_indirect (Environment *_environment, int _asmio, char *_value)
void cpu_get_asmio_indirect (Environment *_environment, int _asmio, char *_value)
void cpu_return (Environment *_environment)
void cpu_pop (Environment *_environment)
void cpu_halt (Environment *_environment)
void cpu_end (Environment *_environment)
void cpu_random (Environment *_environment, char *_entropy)
void cpu_random_8bit (Environment *_environment, char *_entropy, char *_result)
void cpu_random_16bit (Environment *_environment, char *_entropy, char *_result)
void cpu_random_32bit (Environment *_environment, char *_entropy, char *_result)
void cpu_limit_16bit (Environment *_environment, char *_variable, int _value)
void cpu_busy_wait (Environment *_environment, char *_timing)
void cpu_logical_and_8bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_and_8bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_and_8bit_const (Environment *_environment, char *_left, int _right, char *_result)
void cpu_and_16bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_and_32bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_logical_or_8bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_or_8bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_or_8bit_const (Environment *_environment, char *_left, int _right, char *_result)
void cpu_or_16bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_or_32bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_xor_8bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_xor_8bit_const (Environment *_environment, char *_left, int _right, char *_result)
void cpu_xor_16bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_xor_16bit_const (Environment *_environment, char *_left, int _right, char *_result)
void cpu_xor_32bit (Environment *_environment, char *_left, char *_right, char *_result)
void cpu_xor_32bit_const (Environment *_environment, char *_left, int _right, char *_result)
void cpu_swap_8bit (Environment *_environment, char *_left, char *_right)
void cpu_swap_16bit (Environment *_environment, char *_left, char *_right)
void cpu_swap_32bit (Environment *_environment, char *_left, char *_right)
void cpu_logical_not_8bit (Environment *_environment, char *_value, char *_result)
void cpu_not_8bit (Environment *_environment, char *_value, char *_result)
void cpu_not_16bit (Environment *_environment, char *_value, char *_result)
void cpu_not_32bit (Environment *_environment, char *_value, char *_result)
void cpu_di (Environment *_environment)
void cpu_ei (Environment *_environment)
void cpu_inc (Environment *_environment, char *_variable)
void cpu_inc_16bit (Environment *_environment, char *_variable)
void cpu_inc_32bit (Environment *_environment, char *_variable)
void cpu_inc_nbit (Environment *_environment, char *_variable, int _bits)
void cpu_dec (Environment *_environment, char *_variable)
void cpu_dec_16bit (Environment *_environment, char *_variable)
void cpu_dec_32bit (Environment *_environment, char *_variable)
void cpu_dec_nbit (Environment *_environment, char *_variable, int _bits)
void cpu_mem_move (Environment *_environment, char *_source, char *_destination, char *_size)
void cpu_mem_move_16bit (Environment *_environment, char *_source, char *_destination, char *_size)
void cpu_mem_move_direct (Environment *_environment, char *_source, char *_destination, char *_size)
void cpu_mem_move_direct2_size (Environment *_environment, char *_source, char *_destination, int _size)
void cpu_mem_move_direct2 (Environment *_environment, char *_source, char *_destination, char *_size)
void cpu_mem_move_size (Environment *_environment, char *_source, char *_destination, int _size)
void cpu_mem_move_direct_size (Environment *_environment, char *_source, char *_destination, int _size)
void cpu_mem_move_direct_indirect_size (Environment *_environment, char *_source, char *_destination, int _size)
void cpu_mem_move_indirect_direct_size (Environment *_environment, char *_source, char *_destination, int _size)
void cpu_compare_memory (Environment *_environment, char *_source, char *_destination, char *_size, char *_result, int _equal)
void cpu_compare_memory_size (Environment *_environment, char *_source, char *_destination, int _size, char *_result, int _equal)
void cpu_less_than_memory (Environment *_environment, char *_source, char *_destination, char *_size, char *_result, int _equal)
void cpu_less_than_memory_size (Environment *_environment, char *_source, char *_destination, int _size, char *_result, int _equal)
void cpu_greater_than_memory (Environment *_environment, char *_source, char *_destination, char *_size, char *_result, int _equal)
void cpu_greater_than_memory_size (Environment *_environment, char *_source, char *_destination, int _size, char *_result, int _equal)
void cpu_move_8bit_indirect (Environment *_environment, char *_source, char *_value)
void cpu_move_8bit_indirect_with_offset (Environment *_environment, char *_source, char *_value, int _offset)
void cpu_move_8bit_indirect_with_offset2 (Environment *_environment, char *_source, char *_value, char *_offset)
void cpu_move_8bit_with_offset2 (Environment *_environment, char *_source, char *_value, char *_offset)
void cpu_move_8bit_indirect2 (Environment *_environment, char *_value, char *_source)
void cpu_move_8bit_indirect2_8bit (Environment *_environment, char *_value, char *_offset, char *_source)
void cpu_move_8bit_indirect2_16bit (Environment *_environment, char *_value, char *_offset, char *_source)
void cpu_move_16bit_indirect (Environment *_environment, char *_source, char *_value)
void cpu_move_16bit_indirect2 (Environment *_environment, char *_value, char *_source)
void cpu_move_16bit_indirect2_8bit (Environment *_environment, char *_value, char *_offset, char *_source)
void cpu_move_32bit_indirect (Environment *_environment, char *_source, char *_value)
void cpu_move_32bit_indirect2 (Environment *_environment, char *_value, char *_source)
void cpu_uppercase (Environment *_environment, char *_source, char *_size, char *_result)
void cpu_lowercase (Environment *_environment, char *_source, char *_size, char *_result)
void cpu_convert_string_into_8bit (Environment *_environment, char *_string, char *_len, char *_value)
void cpu_convert_string_into_16bit (Environment *_environment, char *_string, char *_len, char *_value)
void cpu_fill_indirect (Environment *_environment, char *_address, char *_size, char *_pattern, int _size_size)
void cpu_flip_8bit (Environment *_environment, char *_source, char *_destination)
void cpu_flip (Environment *_environment, char *_source, char *_size, char *_destination)
void cpu_bit_check (Environment *_environment, char *_value, int _position, char *_result, int _bitwidth)
void cpu_bit_check_extended (Environment *_environment, char *_value, char *_position, char *_result, int _bitwidth)
void cpu_bit_inplace_8bit (Environment *_environment, char *_value, int _position, int *_bit)
void cpu_bit_inplace_8bit_extended_indirect (Environment *_environment, char *_address, char *_position, char *_bit)
void cpu_number_to_string (Environment *_environment, char *_number, char *_string, char *_string_size, int _bits, int _signed)
void cpu_bits_to_string (Environment *_environment, char *_number, char *_string, char *_string_size, int _bits, char *_zero, char *_one)
void cpu_hex_to_string_calc_string (Environment *_environment, char *_size, int _separator, char *_string_size)
void cpu_hex_to_string_calc_string_size (Environment *_environment, int _size, int _separator, char *_string_size)
void cpu_hex_to_string (Environment *_environment, char *_number, char *_string, char *_size, int _separator)
void cpu_dsdefine (Environment *_environment, char *_string, char *_index)
void cpu_dsalloc (Environment *_environment, char *_size, char *_index)
void cpu_dsalloc_size (Environment *_environment, int _size, char *_index)
void cpu_dsfree (Environment *_environment, char *_index)
void cpu_dswrite (Environment *_environment, char *_index)
void cpu_dsresize (Environment *_environment, char *_index, char *_resize)
void cpu_dsresize_size (Environment *_environment, char *_index, int _resize)
void cpu_dsgc (Environment *_environment)
void cpu_dsinit (Environment *_environment)
void cpu_dsdescriptor (Environment *_environment, char *_index, char *_address, char *_size)
void cpu_dsassign (Environment *_environment, char *_original, char *_copy)
void cpu_dsassign_string (Environment *_environment, char *_string, char *_copy)
void cpu_store_8bit_with_offset (Environment *_environment, char *_destination, int _value, int _offset)
void cpu_store_8bit_with_offset2 (Environment *_environment, char *_source, char *_offset, int _value)
void cpu_complement2_8bit (Environment *_environment, char *_source, char *_destination)
void cpu_complement2_16bit (Environment *_environment, char *_source, char *_destination)
void cpu_complement2_32bit (Environment *_environment, char *_source, char *_destination)
void cpu_complement2_nbit (Environment *_environment, char *_source, char *_destination, int _bits)
void cpu_sqroot (Environment *_environment, char *_number, char *_result)
void cpu_dstring_vars (Environment *_environment)
void cpu_protothread_vars (Environment *_environment)
void cpu_protothread_loop (Environment *_environment)
void cpu_protothread_register_at (Environment *_environment, char *_index, char *_label)
void cpu_protothread_register (Environment *_environment, char *_label, char *_index)
void cpu_protothread_unregister (Environment *_environment, char *_index)
void cpu_protothread_save (Environment *_environment, char *_index, int _step)
void cpu_protothread_restore (Environment *_environment, char *_index, char *_step)
void cpu_protothread_set_state (Environment *_environment, char *_index, int _state)
void cpu_protothread_get_state (Environment *_environment, char *_index, char *_state)
void cpu_protothread_current (Environment *_environment, char *_current)
void cpu_protothread_get_address (Environment *_environment, char *_index, char *_address)
void cpu_set_callback (Environment *_environment, char *_callback, char *_label)
void cpu_msc1_uncompress_direct_direct (Environment *_environment, char *_input, char *_output)
void cpu_msc1_uncompress_direct_indirect (Environment *_environment, char *_input, char *_output)
void cpu_msc1_uncompress_indirect_direct (Environment *_environment, char *_input, char *_output)
void cpu_msc1_uncompress_indirect_indirect (Environment *_environment, char *_input, char *_output)
void cpu_out (Environment *_environment, char *_port, char *_value)
void cpu_in (Environment *_environment, char *_port, char *_value)
void cpu_out_direct (Environment *_environment, char *_port, char *_value)
void cpu_in_direct (Environment *_environment, char *_port, char *_value)
void cpu_string_sub (Environment *_environment, char *_source, char *_source_size, char *_pattern, char *_pattern_size, char *_destination, char *_destination_size)
void cpu_blit_initialize (Environment *_environment)
void cpu_blit_finalize (Environment *_environment)
char * cpu_blit_register_name (Environment *_environment, int _register)
int cpu_blit_alloc_register (Environment *_environment)
void cpu_blit_free_register (Environment *_environment, int _register)
void cpu_store_nbit (Environment *_environment, char *_destination, int _n, int _value[])
 CPU 6809: emit code to store n bit
void cpu_move_nbit (Environment *_environment, int _n, char *_source, char *_destination)
 CPU cpu6809: emit code to store n bit
void cpu_move_nbit_indirect (Environment *_environment, int _n, char *_source, char *_value)
void cpu_move_nbit_indirect2 (Environment *_environment, int _n, char *_value, char *_source)
void cpu_float_fast_from_double_to_int_array (Environment *_environment, double _value, int _result[])
void cpu_float_single_from_double_to_int_array (Environment *_environment, double _value, int _result[])
void cpu_float_fast_to_string (Environment *_environment, char *_x, char *_string, char *_string_size)
void cpu_float_single_to_string (Environment *_environment, char *_x, char *_string, char *_string_size)
void cpu_float_fast_from_8 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_single_from_8 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_fast_from_16 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_single_from_16 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_fast_to_8 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_single_to_8 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_fast_to_16 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_single_to_16 (Environment *_environment, char *_value, char *_result, int _signed)
void cpu_float_fast_sub (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_single_sub (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_fast_add (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_single_add (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_fast_cmp (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_single_cmp (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_fast_mul (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_single_mul (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_fast_div (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_single_div (Environment *_environment, char *_x, char *_y, char *_result)
void cpu_float_fast_sin (Environment *_environment, char *_angle, char *_result)
void cpu_float_single_sin (Environment *_environment, char *_angle, char *_result)
void cpu_float_fast_cos (Environment *_environment, char *_angle, char *_result)
void cpu_float_single_cos (Environment *_environment, char *_angle, char *_result)
void cpu_float_fast_tan (Environment *_environment, char *_angle, char *_result)
void cpu_float_single_tan (Environment *_environment, char *_angle, char *_result)
void cpu_float_fast_log (Environment *_environment, char *_value, char *_result)
void cpu_float_single_log (Environment *_environment, char *_value, char *_result)
void cpu_float_fast_exp (Environment *_environment, char *_value, char *_result)
void cpu_float_single_exp (Environment *_environment, char *_value, char *_result)
void cpu_address_table_build (Environment *_environment, char *_table, int *_values, char *_address[], int _count)
void cpu_address_table_lookup (Environment *_environment, char *_table, int _count)
void cpu_address_table_call (Environment *_environment, char *_table, char *_value, char *_address)
void cpu_move_8bit_signed_16bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_8bit_signed_16bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_8bit_unsigned_16bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_8bit_unsigned_16bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_8bit_signed_32bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_8bit_signed_32bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_8bit_unsigned_32bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_8bit_unsigned_32bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_signed_8bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_signed_8bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_unsigned_8bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_unsigned_8bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_signed_32bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_signed_32bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_unsigned_32bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_16bit_unsigned_32bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_signed_8bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_signed_8bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_unsigned_8bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_unsigned_8bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_signed_16bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_signed_16bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_unsigned_16bit_signed (Environment *_environment, char *_source, char *_destination)
void cpu_move_32bit_unsigned_16bit_unsigned (Environment *_environment, char *_source, char *_destination)
void cpu_encrypt (Environment *_environment, char *_data, char *_data_size, char *_key, char *_key_size, char *_output)
void cpu_decrypt (Environment *_environment, char *_data, char *_data_size, char *_key, char *_key_size, char *_output, char *_result)
void cpu_hex_to_bin (Environment *_environment, char *_value_address, char *_value_size, char *_variable_address, char *_variable_size, char *_result)
void cpu_dsfill (Environment *_environment, char *_string, char *_value)
void cpu_dsfill_value (Environment *_environment, char *_string, int _value)

Macro Definition Documentation

◆ B

#define B ( code,
label )
Value:
do { /* x-y+128<0 or 127-x+y<0 */ \
outline2("IF (((128+%s-(*+2))|(127-%s+(*+2)))&0x8000)",(label),(label)); \
if(!strcmp(#code,"RA")) { \
outline1("JMP %s", (label)); \
} else if(!strcmp(#code,"SR")) { \
outline1("JSR %s", (label)); \
} else { \
outline2("LB%s %s", #code, (label)); \
} \
outline0("ELSE"); \
outline2("B%s %s", #code, (label)); \
outline0("ENDIF"); \
} while(0)

Definition at line 47 of file 6809.c.

◆ cpu_BLIT_REGISTER_COUNT

#define cpu_BLIT_REGISTER_COUNT   ( sizeof( cpu_BLIT_REGISTER ) / 9 )

Definition at line 6735 of file 6809.c.

Function Documentation

◆ cpu_address_table_build()

void cpu_address_table_build ( Environment * _environment,
char * _table,
int * _values,
char * _address[],
int _count )

Definition at line 7678 of file 6809.c.

◆ cpu_address_table_call()

void cpu_address_table_call ( Environment * _environment,
char * _table,
char * _value,
char * _address )

Definition at line 7708 of file 6809.c.

◆ cpu_address_table_lookup()

void cpu_address_table_lookup ( Environment * _environment,
char * _table,
int _count )

Definition at line 7687 of file 6809.c.

◆ cpu_addressof_16bit()

void cpu_addressof_16bit ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 1485 of file 6809.c.

◆ cpu_and_16bit()

void cpu_and_16bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4304 of file 6809.c.

◆ cpu_and_32bit()

void cpu_and_32bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4319 of file 6809.c.

◆ cpu_and_8bit()

void cpu_and_8bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4276 of file 6809.c.

◆ cpu_and_8bit_const()

void cpu_and_8bit_const ( Environment * _environment,
char * _left,
int _right,
char * _result )

Definition at line 4290 of file 6809.c.

◆ cpu_beq()

void cpu_beq ( Environment * _environment,
char * _label )

CPU 6809: emit code to make long conditional jump

CPU 6309: emit code to make long conditional jump

This function outputs a code that guarantees an arbitrary distance jump with conditional check on equality. In fact, the opcode BEQ of the CPU 6809 processor allows to make a jump of maximum +/- 128 bytes with respect to the address where the processor is at that moment. To overcome this problem, this function will make a conditional jump to a very close location, which (in turn) will make an unconditional jump to the true destination.

Parameters
_environmentCurrent calling environment
_labelDestination of the conditional jump.

Definition at line 308 of file 6809.c.

◆ cpu_bit_check()

void cpu_bit_check ( Environment * _environment,
char * _value,
int _position,
char * _result,
int _bitwidth )

Definition at line 5909 of file 6809.c.

◆ cpu_bit_check_extended()

void cpu_bit_check_extended ( Environment * _environment,
char * _value,
char * _position,
char * _result,
int _bitwidth )

Definition at line 5937 of file 6809.c.

◆ cpu_bit_inplace_8bit()

void cpu_bit_inplace_8bit ( Environment * _environment,
char * _value,
int _position,
int * _bit )

Definition at line 5965 of file 6809.c.

◆ cpu_bit_inplace_8bit_extended_indirect()

void cpu_bit_inplace_8bit_extended_indirect ( Environment * _environment,
char * _address,
char * _position,
char * _bit )

Definition at line 5995 of file 6809.c.

◆ cpu_bits_to_string()

void cpu_bits_to_string ( Environment * _environment,
char * _number,
char * _string,
char * _string_size,
int _bits,
char * _zero,
char * _one )

Definition at line 6109 of file 6809.c.

◆ cpu_blit_alloc_register()

int cpu_blit_alloc_register ( Environment * _environment)

Definition at line 6760 of file 6809.c.

◆ cpu_blit_finalize()

void cpu_blit_finalize ( Environment * _environment)

Definition at line 6744 of file 6809.c.

◆ cpu_blit_free_register()

void cpu_blit_free_register ( Environment * _environment,
int _register )

Definition at line 6794 of file 6809.c.

◆ cpu_blit_initialize()

void cpu_blit_initialize ( Environment * _environment)

Definition at line 6737 of file 6809.c.

◆ cpu_blit_register_name()

char * cpu_blit_register_name ( Environment * _environment,
int _register )

Definition at line 6751 of file 6809.c.

◆ cpu_bneq()

void cpu_bneq ( Environment * _environment,
char * _label )

CPU 6809: emit code to make long conditional jump

CPU 6309: emit code to make long conditional jump

Parameters
_environmentCurrent calling environment
_labelDestination of the conditional jump.

Definition at line 324 of file 6809.c.

◆ cpu_busy_wait()

void cpu_busy_wait ( Environment * _environment,
char * _timing )

Definition at line 4243 of file 6809.c.

◆ cpu_bveq()

void cpu_bveq ( Environment * _environment,
char * _value,
char * _label )

Definition at line 334 of file 6809.c.

◆ cpu_bvneq()

void cpu_bvneq ( Environment * _environment,
char * _value,
char * _label )

Definition at line 345 of file 6809.c.

◆ cpu_call()

void cpu_call ( Environment * _environment,
char * _label )

Definition at line 3815 of file 6809.c.

◆ cpu_call_addr()

void cpu_call_addr ( Environment * _environment,
int _address )

Definition at line 3809 of file 6809.c.

◆ cpu_call_indirect()

void cpu_call_indirect ( Environment * _environment,
char * _value )

Definition at line 3825 of file 6809.c.

◆ cpu_combine_nibbles()

void cpu_combine_nibbles ( Environment * _environment,
char * _low_nibble,
char * _hi_nibble,
char * _byte )

Definition at line 3784 of file 6809.c.

◆ cpu_compare_16bit()

void cpu_compare_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _positive )

CPU 6809: emit code to compare two 16 bit values

CPU 6309: emit code to compare two 16 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_positiveInvert meaning of comparison

Definition at line 1523 of file 6809.c.

◆ cpu_compare_16bit_const()

void cpu_compare_16bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _positive )

CPU 6809: emit code to compare two 16 bit values

CPU 6309: emit code to compare two 16 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_positiveInvert meaning of comparison

Definition at line 1542 of file 6809.c.

◆ cpu_compare_32bit()

void cpu_compare_32bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _positive )

CPU 6809: emit code to compare two 32 bit values

CPU 6309: emit code to compare two 32 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_positiveMeaning of comparison

Definition at line 2813 of file 6809.c.

◆ cpu_compare_32bit_const()

void cpu_compare_32bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _positive )

CPU 6809: emit code to compare two 32 bit values

CPU 6309: emit code to compare two 32 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_positiveMeaning of comparison

Definition at line 2915 of file 6809.c.

◆ cpu_compare_8bit()

void cpu_compare_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _positive )

CPU 6809: emit code to compare two 8 bit values

CPU 6309: emit code to compare two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_positiveInvert meaning of comparison

Definition at line 810 of file 6809.c.

◆ cpu_compare_8bit_const()

void cpu_compare_8bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _positive )

CPU 6809: emit code to compare two 8 bit values

CPU 6309: emit code to compare two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_positiveInvert meaning of comparison

Definition at line 830 of file 6809.c.

◆ cpu_compare_and_branch_16bit()

void cpu_compare_and_branch_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _label,
int _positive )

Definition at line 1552 of file 6809.c.

◆ cpu_compare_and_branch_16bit_const()

void cpu_compare_and_branch_16bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _label,
int _positive )

CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different

CPU 6309: emit code to compare two 8 bit values and jump if they are equal/different

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare
_labelWhere to jump
_positiveInvert meaning of comparison

Definition at line 1578 of file 6809.c.

◆ cpu_compare_and_branch_32bit_const()

void cpu_compare_and_branch_32bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _label,
int _positive )

CPU 6809: emit code to compare two 32 bit values and jump if they are equal/different

CPU 6309: emit code to compare two 32 bit values and jump if they are equal/different

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare
_labelWhere to jump
_positiveInvert meaning of comparison

Definition at line 2958 of file 6809.c.

◆ cpu_compare_and_branch_8bit()

void cpu_compare_and_branch_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _label,
int _positive )

Definition at line 850 of file 6809.c.

◆ cpu_compare_and_branch_8bit_const()

void cpu_compare_and_branch_8bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _label,
int _positive )

CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different

CPU 6309: emit code to compare two 8 bit values and jump if they are equal/different

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare
_labelWhere to jump
_positiveInvert meaning of comparison

Definition at line 875 of file 6809.c.

◆ cpu_compare_and_branch_char_const()

void cpu_compare_and_branch_char_const ( Environment * _environment,
char * _source,
int _destination,
char * _label,
int _positive )

CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different

CPU 6309: emit code to compare two 8 bit values and jump if they are equal/different

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare
_labelWhere to jump
_positiveInvert meaning of comparison

Definition at line 924 of file 6809.c.

◆ cpu_compare_memory()

void cpu_compare_memory ( Environment * _environment,
char * _source,
char * _destination,
char * _size,
char * _result,
int _equal )

Definition at line 5181 of file 6809.c.

◆ cpu_compare_memory_size()

void cpu_compare_memory_size ( Environment * _environment,
char * _source,
char * _destination,
int _size,
char * _result,
int _equal )

Definition at line 5238 of file 6809.c.

◆ cpu_compare_nbit()

void cpu_compare_nbit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _positive,
int _bits )

Definition at line 2848 of file 6809.c.

◆ cpu_compare_nbit_const()

void cpu_compare_nbit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _positive,
int _bits )

CPU 6502: emit code to compare two 32 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_positiveMeaning of comparison

Definition at line 2880 of file 6809.c.

◆ cpu_complement2_16bit()

void cpu_complement2_16bit ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 6389 of file 6809.c.

◆ cpu_complement2_32bit()

void cpu_complement2_32bit ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 6403 of file 6809.c.

◆ cpu_complement2_8bit()

void cpu_complement2_8bit ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 6377 of file 6809.c.

◆ cpu_complement2_nbit()

void cpu_complement2_nbit ( Environment * _environment,
char * _source,
char * _destination,
int _bits )

Definition at line 6427 of file 6809.c.

◆ cpu_convert_string_into_16bit()

void cpu_convert_string_into_16bit ( Environment * _environment,
char * _string,
char * _len,
char * _value )

Definition at line 5834 of file 6809.c.

◆ cpu_convert_string_into_8bit()

void cpu_convert_string_into_8bit ( Environment * _environment,
char * _string,
char * _len,
char * _value )

Definition at line 5819 of file 6809.c.

◆ cpu_ctoa()

void cpu_ctoa ( Environment * _environment)

Definition at line 279 of file 6809.c.

◆ cpu_dec()

void cpu_dec ( Environment * _environment,
char * _variable )

Definition at line 4693 of file 6809.c.

◆ cpu_dec_16bit()

void cpu_dec_16bit ( Environment * _environment,
char * _variable )

Definition at line 4703 of file 6809.c.

◆ cpu_dec_32bit()

void cpu_dec_32bit ( Environment * _environment,
char * _variable )

Definition at line 4715 of file 6809.c.

◆ cpu_dec_nbit()

void cpu_dec_nbit ( Environment * _environment,
char * _variable,
int _bits )

Definition at line 4735 of file 6809.c.

◆ cpu_decrypt()

void cpu_decrypt ( Environment * _environment,
char * _data,
char * _data_size,
char * _key,
char * _key_size,
char * _output,
char * _result )

Definition at line 7916 of file 6809.c.

◆ cpu_di()

void cpu_di ( Environment * _environment)

Definition at line 4610 of file 6809.c.

◆ cpu_dsalloc()

void cpu_dsalloc ( Environment * _environment,
char * _size,
char * _index )

Definition at line 6227 of file 6809.c.

◆ cpu_dsalloc_size()

void cpu_dsalloc_size ( Environment * _environment,
int _size,
char * _index )

Definition at line 6238 of file 6809.c.

◆ cpu_dsassign()

void cpu_dsassign ( Environment * _environment,
char * _original,
char * _copy )

Definition at line 6329 of file 6809.c.

◆ cpu_dsassign_string()

void cpu_dsassign_string ( Environment * _environment,
char * _string,
char * _copy )

Definition at line 6341 of file 6809.c.

◆ cpu_dsdefine()

void cpu_dsdefine ( Environment * _environment,
char * _string,
char * _index )

Definition at line 6216 of file 6809.c.

◆ cpu_dsdescriptor()

void cpu_dsdescriptor ( Environment * _environment,
char * _index,
char * _address,
char * _size )

Definition at line 6309 of file 6809.c.

◆ cpu_dsfill()

void cpu_dsfill ( Environment * _environment,
char * _string,
char * _value )

Definition at line 7944 of file 6809.c.

◆ cpu_dsfill_value()

void cpu_dsfill_value ( Environment * _environment,
char * _string,
int _value )

Definition at line 7955 of file 6809.c.

◆ cpu_dsfree()

void cpu_dsfree ( Environment * _environment,
char * _index )

Definition at line 6249 of file 6809.c.

◆ cpu_dsgc()

void cpu_dsgc ( Environment * _environment)

Definition at line 6291 of file 6809.c.

◆ cpu_dsinit()

void cpu_dsinit ( Environment * _environment)

Definition at line 6300 of file 6809.c.

◆ cpu_dsresize()

void cpu_dsresize ( Environment * _environment,
char * _index,
char * _resize )

Definition at line 6269 of file 6809.c.

◆ cpu_dsresize_size()

void cpu_dsresize_size ( Environment * _environment,
char * _index,
int _resize )

Definition at line 6280 of file 6809.c.

◆ cpu_dstring_vars()

void cpu_dstring_vars ( Environment * _environment)

Definition at line 6462 of file 6809.c.

◆ cpu_dswrite()

void cpu_dswrite ( Environment * _environment,
char * _index )

Definition at line 6259 of file 6809.c.

◆ cpu_ei()

void cpu_ei ( Environment * _environment)

Definition at line 4614 of file 6809.c.

◆ cpu_encrypt()

void cpu_encrypt ( Environment * _environment,
char * _data,
char * _data_size,
char * _key,
char * _key_size,
char * _output )

Definition at line 7903 of file 6809.c.

◆ cpu_end()

void cpu_end ( Environment * _environment)

Definition at line 4124 of file 6809.c.

◆ cpu_execute_compare_and_branch_8bit_const()

void cpu_execute_compare_and_branch_8bit_const ( Environment * _environment,
int _destination,
char * _label,
int _positive )

CPU 6809: emit code to compare two 8 bit values and jump if they are equal/different

CPU 6309: emit code to compare two 8 bit values and jump if they are equal/different

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare
_labelWhere to jump
_positiveInvert meaning of comparison

Definition at line 900 of file 6809.c.

◆ cpu_fill()

void cpu_fill ( Environment * _environment,
char * _address,
char * _bytes,
int _bytes_width,
char * _pattern )

CPU 6809: emit code to fill up a memory area

CPU 6309: emit code to fill up a memory area

This function can be used to output a piece of code that fills a given memory area with a given <PATTERN (<PATTERN size: 1 byte). The starting address must be contained in a variable, while the area must be a multiple of 256 bytes.

Parameters
_environmentCurrent calling environment
_addressStarting address
_bytesNumber of bytes to fill
_<PATTERN<PATTERN to use

Definition at line 534 of file 6809.c.

◆ cpu_fill_blocks()

void cpu_fill_blocks ( Environment * _environment,
char * _address,
char * _blocks,
char * _pattern )

CPU 6809: emit code to fill up a memory area

CPU 6309: emit code to fill up a memory area

This function can be used to output a piece of code that fills a given memory area with a given <PATTERN (<PATTERN size: 1 byte). The starting address must be contained in a variable, while the area must be a multiple of 256 bytes.

Parameters
_environmentCurrent calling environment
_addressStarting address
_blocksNumber of 256 bytes blocks to fill
_<PATTERN<PATTERN to use

Definition at line 484 of file 6809.c.

◆ cpu_fill_direct()

void cpu_fill_direct ( Environment * _environment,
char * _address,
char * _bytes,
char * _pattern )

CPU 6809: emit code to fill up a memory area

CPU 6309: emit code to fill up a memory area

This function can be used to output a piece of code that fills a given memory area with a given <PATTERN (<PATTERN size: 1 byte). The starting address must be contained in a variable, while the area must be a multiple of 256 bytes.

Parameters
_environmentCurrent calling environment
_addressStarting address
_bytesNumber of bytes to fill
_<PATTERN<PATTERN to use

Definition at line 642 of file 6809.c.

◆ cpu_fill_direct_size()

void cpu_fill_direct_size ( Environment * _environment,
char * _address,
int _bytes,
char * _pattern )

CPU 6809: emit code to fill up a memory area

CPU 6309: emit code to fill up a memory area

This function can be used to output a piece of code that fills a given memory area with a given <PATTERN (<PATTERN size: 1 byte). The starting address must be contained in a variable, while the area must be a multiple of 256 bytes.

Parameters
_environmentCurrent calling environment
_addressStarting address
_bytesNumber of bytes to fill
_<PATTERN<PATTERN to use

Definition at line 674 of file 6809.c.

◆ cpu_fill_direct_size_value()

void cpu_fill_direct_size_value ( Environment * _environment,
char * _address,
int _bytes,
int _pattern )

CPU 6809: emit code to fill up a memory area

CPU 6309: emit code to fill up a memory area

This function can be used to output a piece of code that fills a given memory area with a given <PATTERN (<PATTERN size: 1 byte). The starting address must be contained in a variable, while the area must be a multiple of 256 bytes.

Parameters
_environmentCurrent calling environment
_addressStarting address
_bytesNumber of bytes to fill
_<PATTERN<PATTERN to use

Definition at line 711 of file 6809.c.

◆ cpu_fill_indirect()

void cpu_fill_indirect ( Environment * _environment,
char * _address,
char * _size,
char * _pattern,
int _size_size )

Definition at line 5849 of file 6809.c.

◆ cpu_fill_size()

void cpu_fill_size ( Environment * _environment,
char * _address,
int _bytes,
char * _pattern )

CPU 6809: emit code to fill up a memory area

CPU 6309: emit code to fill up a memory area

This function can be used to output a piece of code that fills a given memory area with a given <PATTERN (<PATTERN size: 1 byte). The starting address must be contained in a variable, while the area must be a multiple of 256 bytes.

Parameters
_environmentCurrent calling environment
_addressStarting address
_bytesNumber of bytes to fill
_<PATTERN<PATTERN to use

Definition at line 574 of file 6809.c.

◆ cpu_fill_size_value()

void cpu_fill_size_value ( Environment * _environment,
char * _address,
int _bytes,
int _pattern )

CPU 6809: emit code to fill up a memory area

CPU 6309: emit code to fill up a memory area

This function can be used to output a piece of code that fills a given memory area with a given <PATTERN (<PATTERN size: 1 byte). The starting address must be contained in a variable, while the area must be a multiple of 256 bytes.

Parameters
_environmentCurrent calling environment
_addressStarting address
_bytesNumber of bytes to fill
_<PATTERN<PATTERN to use

Definition at line 610 of file 6809.c.

◆ cpu_flip()

void cpu_flip ( Environment * _environment,
char * _source,
char * _size,
char * _destination )

Definition at line 5894 of file 6809.c.

◆ cpu_flip_8bit()

void cpu_flip_8bit ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 5876 of file 6809.c.

◆ cpu_float_fast_add()

void cpu_float_fast_add ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7485 of file 6809.c.

◆ cpu_float_fast_cmp()

void cpu_float_fast_cmp ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7506 of file 6809.c.

◆ cpu_float_fast_cos()

void cpu_float_fast_cos ( Environment * _environment,
char * _angle,
char * _result )

Definition at line 7602 of file 6809.c.

◆ cpu_float_fast_div()

void cpu_float_fast_div ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7562 of file 6809.c.

◆ cpu_float_fast_exp()

void cpu_float_fast_exp ( Environment * _environment,
char * _value,
char * _result )

Definition at line 7659 of file 6809.c.

◆ cpu_float_fast_from_16()

void cpu_float_fast_from_16 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7400 of file 6809.c.

◆ cpu_float_fast_from_8()

void cpu_float_fast_from_8 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7377 of file 6809.c.

◆ cpu_float_fast_from_double_to_int_array()

void cpu_float_fast_from_double_to_int_array ( Environment * _environment,
double _value,
int _result[] )

Definition at line 7077 of file 6809.c.

◆ cpu_float_fast_log()

void cpu_float_fast_log ( Environment * _environment,
char * _value,
char * _result )

Definition at line 7640 of file 6809.c.

◆ cpu_float_fast_mul()

void cpu_float_fast_mul ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7541 of file 6809.c.

◆ cpu_float_fast_sin()

void cpu_float_fast_sin ( Environment * _environment,
char * _angle,
char * _result )

Definition at line 7583 of file 6809.c.

◆ cpu_float_fast_sub()

void cpu_float_fast_sub ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7464 of file 6809.c.

◆ cpu_float_fast_tan()

void cpu_float_fast_tan ( Environment * _environment,
char * _angle,
char * _result )

Definition at line 7621 of file 6809.c.

◆ cpu_float_fast_to_16()

void cpu_float_fast_to_16 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7443 of file 6809.c.

◆ cpu_float_fast_to_8()

void cpu_float_fast_to_8 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7422 of file 6809.c.

◆ cpu_float_fast_to_string()

void cpu_float_fast_to_string ( Environment * _environment,
char * _x,
char * _string,
char * _string_size )

Definition at line 7353 of file 6809.c.

◆ cpu_float_single_add()

void cpu_float_single_add ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7489 of file 6809.c.

◆ cpu_float_single_cmp()

void cpu_float_single_cmp ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7510 of file 6809.c.

◆ cpu_float_single_cos()

void cpu_float_single_cos ( Environment * _environment,
char * _angle,
char * _result )

Definition at line 7606 of file 6809.c.

◆ cpu_float_single_div()

void cpu_float_single_div ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7566 of file 6809.c.

◆ cpu_float_single_exp()

void cpu_float_single_exp ( Environment * _environment,
char * _value,
char * _result )

Definition at line 7663 of file 6809.c.

◆ cpu_float_single_from_16()

void cpu_float_single_from_16 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7404 of file 6809.c.

◆ cpu_float_single_from_8()

void cpu_float_single_from_8 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7381 of file 6809.c.

◆ cpu_float_single_from_double_to_int_array()

void cpu_float_single_from_double_to_int_array ( Environment * _environment,
double _value,
int _result[] )

Definition at line 7081 of file 6809.c.

◆ cpu_float_single_log()

void cpu_float_single_log ( Environment * _environment,
char * _value,
char * _result )

Definition at line 7644 of file 6809.c.

◆ cpu_float_single_mul()

void cpu_float_single_mul ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7545 of file 6809.c.

◆ cpu_float_single_sin()

void cpu_float_single_sin ( Environment * _environment,
char * _angle,
char * _result )

Definition at line 7587 of file 6809.c.

◆ cpu_float_single_sub()

void cpu_float_single_sub ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 7468 of file 6809.c.

◆ cpu_float_single_tan()

void cpu_float_single_tan ( Environment * _environment,
char * _angle,
char * _result )

Definition at line 7625 of file 6809.c.

◆ cpu_float_single_to_16()

void cpu_float_single_to_16 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7447 of file 6809.c.

◆ cpu_float_single_to_8()

void cpu_float_single_to_8 ( Environment * _environment,
char * _value,
char * _result,
int _signed )

Definition at line 7426 of file 6809.c.

◆ cpu_float_single_to_string()

void cpu_float_single_to_string ( Environment * _environment,
char * _x,
char * _string,
char * _string_size )

Definition at line 7357 of file 6809.c.

◆ cpu_get_asmio_indirect()

void cpu_get_asmio_indirect ( Environment * _environment,
int _asmio,
char * _value )

Definition at line 4027 of file 6809.c.

◆ cpu_greater_than_16bit()

void cpu_greater_than_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _signed )

CPU 6809: emit code to compare two 8 bit values

CPU 6309: emit code to compare two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_equalTrue if equal

Definition at line 1632 of file 6809.c.

◆ cpu_greater_than_16bit_const()

void cpu_greater_than_16bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _signed )

Definition at line 1642 of file 6809.c.

◆ cpu_greater_than_32bit()

void cpu_greater_than_32bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _signed )

CPU 6809: emit code to compare two 8 bit values

CPU 6309: emit code to compare two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_equalTrue if equal

Definition at line 3161 of file 6809.c.

◆ cpu_greater_than_32bit_const()

void cpu_greater_than_32bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _signed )

Definition at line 3197 of file 6809.c.

◆ cpu_greater_than_8bit()

void cpu_greater_than_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _signed )

CPU 6809: emit code to compare two 8 bit values

CPU 6309: emit code to compare two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_equalTrue if equal

Definition at line 988 of file 6809.c.

◆ cpu_greater_than_8bit_const()

void cpu_greater_than_8bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _signed )

Definition at line 998 of file 6809.c.

◆ cpu_greater_than_memory()

void cpu_greater_than_memory ( Environment * _environment,
char * _source,
char * _destination,
char * _size,
char * _result,
int _equal )

Definition at line 5437 of file 6809.c.

◆ cpu_greater_than_memory_size()

void cpu_greater_than_memory_size ( Environment * _environment,
char * _source,
char * _destination,
int _size,
char * _result,
int _equal )

Definition at line 5502 of file 6809.c.

◆ cpu_greater_than_nbit()

void cpu_greater_than_nbit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _bits )

Definition at line 3233 of file 6809.c.

◆ cpu_greater_than_nbit_const()

void cpu_greater_than_nbit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _bits )

Definition at line 3244 of file 6809.c.

◆ cpu_halt()

void cpu_halt ( Environment * _environment)

Definition at line 4110 of file 6809.c.

◆ cpu_hex_to_bin()

void cpu_hex_to_bin ( Environment * _environment,
char * _value_address,
char * _value_size,
char * _variable_address,
char * _variable_size,
char * _result )

Definition at line 7931 of file 6809.c.

◆ cpu_hex_to_string()

void cpu_hex_to_string ( Environment * _environment,
char * _number,
char * _string,
char * _size,
int _separator )

Definition at line 6197 of file 6809.c.

◆ cpu_hex_to_string_calc_string()

void cpu_hex_to_string_calc_string ( Environment * _environment,
char * _size,
int _separator,
char * _string_size )

Definition at line 6163 of file 6809.c.

◆ cpu_hex_to_string_calc_string_size()

void cpu_hex_to_string_calc_string_size ( Environment * _environment,
int _size,
int _separator,
char * _string_size )

Definition at line 6180 of file 6809.c.

◆ cpu_in()

void cpu_in ( Environment * _environment,
char * _port,
char * _value )

Definition at line 6691 of file 6809.c.

◆ cpu_in_direct()

void cpu_in_direct ( Environment * _environment,
char * _port,
char * _value )

Definition at line 6699 of file 6809.c.

◆ cpu_inc()

void cpu_inc ( Environment * _environment,
char * _variable )

Definition at line 4618 of file 6809.c.

◆ cpu_inc_16bit()

void cpu_inc_16bit ( Environment * _environment,
char * _variable )

Definition at line 4628 of file 6809.c.

◆ cpu_inc_32bit()

void cpu_inc_32bit ( Environment * _environment,
char * _variable )

Definition at line 4649 of file 6809.c.

◆ cpu_inc_nbit()

void cpu_inc_nbit ( Environment * _environment,
char * _variable,
int _bits )

Definition at line 4676 of file 6809.c.

◆ cpu_init()

void cpu_init ( Environment * _environment)

Definition at line 62 of file 6809.c.

◆ cpu_jump()

void cpu_jump ( Environment * _environment,
char * _label )

Definition at line 3799 of file 6809.c.

◆ cpu_jump_indirect()

void cpu_jump_indirect ( Environment * _environment,
char * _value )

Definition at line 3843 of file 6809.c.

◆ cpu_label()

void cpu_label ( Environment * _environment,
char * _label )

Definition at line 356 of file 6809.c.

◆ cpu_less_than_16bit()

void cpu_less_than_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _signed )

CPU 6809: emit code to compare two 8 bit values

CPU 6309: emit code to compare two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_equalTrue if equal

Definition at line 1603 of file 6809.c.

◆ cpu_less_than_16bit_const()

void cpu_less_than_16bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _signed )

Definition at line 1613 of file 6809.c.

◆ cpu_less_than_32bit()

void cpu_less_than_32bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _signed )

CPU 6809: emit code to compare two 32 bit values

CPU 6309: emit code to compare two 32 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_equalTrue if equal

Definition at line 2993 of file 6809.c.

◆ cpu_less_than_32bit_const()

void cpu_less_than_32bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _signed )

Definition at line 3029 of file 6809.c.

◆ cpu_less_than_8bit()

void cpu_less_than_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _signed )

CPU 6809: emit code to compare two 8 bit values

CPU 6309: emit code to compare two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to compare
_destinationSecond value to compare and destination address for result (if _other is NULL)
_otherDestination address for result
_equalTrue if equal

Definition at line 949 of file 6809.c.

◆ cpu_less_than_8bit_const()

void cpu_less_than_8bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _signed )

Definition at line 959 of file 6809.c.

◆ cpu_less_than_and_branch_8bit_const()

void cpu_less_than_and_branch_8bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _signed )

Definition at line 969 of file 6809.c.

◆ cpu_less_than_memory()

void cpu_less_than_memory ( Environment * _environment,
char * _source,
char * _destination,
char * _size,
char * _result,
int _equal )

Definition at line 5301 of file 6809.c.

◆ cpu_less_than_memory_size()

void cpu_less_than_memory_size ( Environment * _environment,
char * _source,
char * _destination,
int _size,
char * _result,
int _equal )

Definition at line 5366 of file 6809.c.

◆ cpu_less_than_nbit()

void cpu_less_than_nbit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _equal,
int _bits )

Definition at line 3065 of file 6809.c.

◆ cpu_less_than_nbit_const()

void cpu_less_than_nbit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
int _equal,
int _bits )

Definition at line 3109 of file 6809.c.

◆ cpu_limit_16bit()

void cpu_limit_16bit ( Environment * _environment,
char * _variable,
int _value )

Definition at line 4224 of file 6809.c.

◆ cpu_logical_and_8bit()

void cpu_logical_and_8bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4258 of file 6809.c.

◆ cpu_logical_not_8bit()

void cpu_logical_not_8bit ( Environment * _environment,
char * _value,
char * _result )

Definition at line 4556 of file 6809.c.

◆ cpu_logical_or_8bit()

void cpu_logical_or_8bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4338 of file 6809.c.

◆ cpu_lowercase()

void cpu_lowercase ( Environment * _environment,
char * _source,
char * _size,
char * _result )

Definition at line 5783 of file 6809.c.

◆ cpu_math_add_16bit()

void cpu_math_add_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

CPU 6809: emit code to add two 16 bit values

CPU 6309: emit code to add two 16 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to add
_destinationSecond value to add and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 1661 of file 6809.c.

◆ cpu_math_add_16bit_const()

void cpu_math_add_16bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other )

CPU 6502: emit code to add two 16 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to add
_destinationSecond value to add and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 1674 of file 6809.c.

◆ cpu_math_add_16bit_with_16bit()

void cpu_math_add_16bit_with_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

CPU 6809: emit code to add two 16 bit values

CPU 6309: emit code to add two 16 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to add
_destinationSecond value to add and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 1696 of file 6809.c.

◆ cpu_math_add_16bit_with_8bit()

void cpu_math_add_16bit_with_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

Definition at line 1708 of file 6809.c.

◆ cpu_math_add_32bit()

void cpu_math_add_32bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

CPU 6809: emit code to add two 32 bit values

CPU 6309: emit code to add two 32 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to add
_destinationSecond value to add and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 3263 of file 6809.c.

◆ cpu_math_add_32bit_const()

void cpu_math_add_32bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other )

Definition at line 3305 of file 6809.c.

◆ cpu_math_add_8bit()

void cpu_math_add_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

CPU 6809: emit code to add two 8 bit values

CPU 6309: emit code to add two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to add
_destinationSecond value to add and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 1016 of file 6809.c.

◆ cpu_math_add_8bit_const()

void cpu_math_add_8bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other )

CPU 6502: emit code to add two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to add
_destinationSecond value to add and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 1028 of file 6809.c.

◆ cpu_math_add_nbit()

void cpu_math_add_nbit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _bits )

Definition at line 3286 of file 6809.c.

◆ cpu_math_and_const_16bit()

void cpu_math_and_const_16bit ( Environment * _environment,
char * _source,
int _mask )

CPU 6809: emit code to mask with "and" a value of 16 bit

CPU 6309: emit code to mask with "and" a value of 16 bit

Parameters
_environmentCurrent calling environment
_sourceValue to mask (and destination of mask operation)
_maskMask to use

Definition at line 2500 of file 6809.c.

◆ cpu_math_and_const_32bit()

void cpu_math_and_const_32bit ( Environment * _environment,
char * _source,
int _mask )

CPU 6809: emit code to mask with "and" a value of 32 bit

CPU 6309: emit code to mask with "and" a value of 32 bit

Parameters
_environmentCurrent calling environment
_sourceValue to mask (and destination of mask operation)
_maskMask to use

Definition at line 3758 of file 6809.c.

◆ cpu_math_and_const_8bit()

void cpu_math_and_const_8bit ( Environment * _environment,
char * _source,
int _mask )

CPU 6809: emit code to mask with "and" a value of 8 bit

CPU 6309: emit code to mask with "and" a value of 8 bit

Parameters
_environmentCurrent calling environment
_sourceValue to mask (and destination of mask operation)
_maskMask to use

Definition at line 1451 of file 6809.c.

◆ cpu_math_complement_const_16bit()

void cpu_math_complement_const_16bit ( Environment * _environment,
char * _source,
int _value )

CPU 6809: emit code to calculate a 16 bit complement of a number

CPU 6309: emit code to calculate a 16 bit complement of a number

Parameters
_environmentCurrent calling environment
_sourceValue to complement
_valueValure to use as base for complement

Definition at line 2339 of file 6809.c.

◆ cpu_math_complement_const_32bit()

void cpu_math_complement_const_32bit ( Environment * _environment,
char * _source,
int _value )

CPU 6809: emit code to calculate a 32 bit complement of a number

CPU 6309: emit code to calculate a 32 bit complement of a number

Parameters
_environmentCurrent calling environment
_sourceValue to complement
_valueValure to use as base for complement

Definition at line 3412 of file 6809.c.

◆ cpu_math_complement_const_8bit()

void cpu_math_complement_const_8bit ( Environment * _environment,
char * _source,
int _value )

CPU 6809: emit code to calculate an 8 bit complement of a number

CPU 6309: emit code to calculate an 8 bit complement of a number

Parameters
_environmentCurrent calling environment
_sourceValue to complement
_valueValure to use as base for complement

Definition at line 1432 of file 6809.c.

◆ cpu_math_div2_const_16bit()

void cpu_math_div2_const_16bit ( Environment * _environment,
char * _source,
int _steps,
int _signed,
char * _remainder )

CPU 6809: emit code to halves for several times a 16 bit value

CPU 6309: emit code to halves for several times a 16 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to halves and destination for result
_stepsTimes to halves

Definition at line 2358 of file 6809.c.

◆ cpu_math_div2_const_32bit()

void cpu_math_div2_const_32bit ( Environment * _environment,
char * _source,
int _steps,
int _signed,
char * _remainder )

CPU 6809: emit code to halves for several times a 32 bit value

CPU 6309: emit code to halves for several times a 32 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to halves and destination for result
_stepsTimes to halves

Definition at line 3436 of file 6809.c.

◆ cpu_math_div2_const_8bit()

void cpu_math_div2_const_8bit ( Environment * _environment,
char * _source,
int _steps,
int _signed,
char * _remainder )

CPU 6809: emit code to halves for several times a 8 bit value

CPU 6309: emit code to halves for several times a 8 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to halves and destination for result
_stepsTimes to halves

Definition at line 1329 of file 6809.c.

◆ cpu_math_div2_const_nbit()

void cpu_math_div2_const_nbit ( Environment * _environment,
char * _source,
int _steps,
int _bits,
char * _remainder )

Definition at line 3563 of file 6809.c.

◆ cpu_math_div_16bit_to_16bit()

void cpu_math_div_16bit_to_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
char * _other_remainder,
int _signed )

Definition at line 2011 of file 6809.c.

◆ cpu_math_div_16bit_to_16bit_const()

void cpu_math_div_16bit_to_16bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
char * _other_remainder,
int _signed )

Definition at line 2155 of file 6809.c.

◆ cpu_math_div_32bit_to_16bit()

void cpu_math_div_32bit_to_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
char * _other_remainder,
int _signed )

Definition at line 2558 of file 6809.c.

◆ cpu_math_div_32bit_to_16bit_const()

void cpu_math_div_32bit_to_16bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
char * _other_remainder,
int _signed )

Definition at line 2763 of file 6809.c.

◆ cpu_math_div_8bit_to_8bit()

void cpu_math_div_8bit_to_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
char * _other_remainder,
int _signed )

Definition at line 1162 of file 6809.c.

◆ cpu_math_div_8bit_to_8bit_const()

void cpu_math_div_8bit_to_8bit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
char * _other_remainder,
int _signed )

Definition at line 1242 of file 6809.c.

◆ cpu_math_div_nbit_to_nbit()

void cpu_math_div_nbit_to_nbit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
char * _other_remainder,
int _bits )

Definition at line 2600 of file 6809.c.

◆ cpu_math_div_nbit_to_nbit_const()

void cpu_math_div_nbit_to_nbit_const ( Environment * _environment,
char * _source,
int _destination,
char * _other,
char * _other_remainder,
int _bits )

Definition at line 2730 of file 6809.c.

◆ cpu_math_double_16bit()

void cpu_math_double_16bit ( Environment * _environment,
char * _source,
char * _other,
int _signed )

CPU 6809: emit code to double a 16 bit value

CPU 6309: emit code to double a 16 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to double and destination for result (if _other is NULL)
_otherDestination address for result

Definition at line 1728 of file 6809.c.

◆ cpu_math_double_32bit()

void cpu_math_double_32bit ( Environment * _environment,
char * _source,
char * _other,
int _signed )

CPU 6809: emit code to double a 32 bit value

CPU 6309: emit code to double a 32 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to double and destination for result (if _other is NULL)
_otherDestination address for result

Definition at line 3332 of file 6809.c.

◆ cpu_math_double_8bit()

void cpu_math_double_8bit ( Environment * _environment,
char * _source,
char * _other,
int _signed )

CPU 6809: emit code to double a 8 bit value

CPU 6309: emit code to double a 8 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to double and destination for result (if _other is NULL)
_otherDestination address for result

Definition at line 1067 of file 6809.c.

◆ cpu_math_mul2_const_16bit()

void cpu_math_mul2_const_16bit ( Environment * _environment,
char * _source,
int _steps,
int _signed )

CPU 6809: emit code to halves for several times a 8 bit value

CPU 6309: emit code to halves for several times a 8 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to halves and destination for result
_stepsTimes to halves

Definition at line 2464 of file 6809.c.

◆ cpu_math_mul2_const_32bit()

void cpu_math_mul2_const_32bit ( Environment * _environment,
char * _source,
int _steps,
int _signed )

CPU 6809: emit code to double for several times a 32 bit value

CPU 6309: emit code to double for several times a 32 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to double and destination for result
_stepsTimes to double

Definition at line 3607 of file 6809.c.

◆ cpu_math_mul2_const_8bit()

void cpu_math_mul2_const_8bit ( Environment * _environment,
char * _source,
int _steps,
int _signed )

CPU 6809: emit code to double for several times a 8 bit value

CPU 6309: emit code to double for several times a 8 bit value

Parameters
_environmentCurrent calling environment
_sourceValue to double and destination for result
_stepsTimes to double

Definition at line 1397 of file 6809.c.

◆ cpu_math_mul2_const_nbit()

void cpu_math_mul2_const_nbit ( Environment * _environment,
char * _source,
int _steps,
int _bits )

Definition at line 3724 of file 6809.c.

◆ cpu_math_mul_16bit_to_32bit()

void cpu_math_mul_16bit_to_32bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _signed )

CPU 6809: emit code to multiply two 16 bit values in a 32 bit register

CPU 6309: emit code to multiply two 16 bit values in a 32 bit register

Parameters
_environmentCurrent calling environment
_sourceFirst value to multipy (16 bit)
_destinationSecond value to multipy (16 bit)
_otherDestination address for result (32 bit)

Definition at line 1754 of file 6809.c.

◆ cpu_math_mul_8bit_to_16bit()

void cpu_math_mul_8bit_to_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _signed )

CPU 6809: emit code to multiply two 8bit values in a 16 bit register

CPU 6309: emit code to multiply two 8bit values in a 16 bit register

Parameters
_environmentCurrent calling environment
_sourceFirst value to multipy (8 bit)
_destinationSecond value to multipy (8 bit)
_otherDestination address for result (16 bit)

Definition at line 1087 of file 6809.c.

◆ cpu_math_mul_nbit_to_nbit()

void cpu_math_mul_nbit_to_nbit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _bits )

Definition at line 1888 of file 6809.c.

◆ cpu_math_sub_16bit()

void cpu_math_sub_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

CPU 6809: emit code to subtract two 16 bit values

CPU 6309: emit code to subtract two 16 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to subtract
_destinationSecond value to subtract and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 2307 of file 6809.c.

◆ cpu_math_sub_16bit_with_8bit()

void cpu_math_sub_16bit_with_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

Definition at line 2319 of file 6809.c.

◆ cpu_math_sub_32bit()

void cpu_math_sub_32bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

CPU 6809: emit code to subtract two 32 bit values

CPU 6309: emit code to subtract two 32 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to subtract
_destinationSecond value to subtract and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 3364 of file 6809.c.

◆ cpu_math_sub_8bit()

void cpu_math_sub_8bit ( Environment * _environment,
char * _source,
char * _destination,
char * _other )

CPU 6809: emit code to subtract two 8 bit values

CPU 6309: emit code to subtract two 8 bit values

Parameters
_environmentCurrent calling environment
_sourceFirst value to subtract
_destinationSecond value to subtract and destination address for result (if _other is NULL)
_otherDestination address for result

Definition at line 1048 of file 6809.c.

◆ cpu_math_sub_nbit()

void cpu_math_sub_nbit ( Environment * _environment,
char * _source,
char * _destination,
char * _other,
int _bits )

Definition at line 3385 of file 6809.c.

◆ cpu_mem_move()

void cpu_mem_move ( Environment * _environment,
char * _source,
char * _destination,
char * _size )

Definition at line 4755 of file 6809.c.

◆ cpu_mem_move_16bit()

void cpu_mem_move_16bit ( Environment * _environment,
char * _source,
char * _destination,
char * _size )

Definition at line 4810 of file 6809.c.

◆ cpu_mem_move_direct()

void cpu_mem_move_direct ( Environment * _environment,
char * _source,
char * _destination,
char * _size )

Definition at line 4828 of file 6809.c.

◆ cpu_mem_move_direct2()

void cpu_mem_move_direct2 ( Environment * _environment,
char * _source,
char * _destination,
char * _size )

Definition at line 4916 of file 6809.c.

◆ cpu_mem_move_direct2_size()

void cpu_mem_move_direct2_size ( Environment * _environment,
char * _source,
char * _destination,
int _size )

Definition at line 4883 of file 6809.c.

◆ cpu_mem_move_direct_indirect_size()

void cpu_mem_move_direct_indirect_size ( Environment * _environment,
char * _source,
char * _destination,
int _size )

Definition at line 5065 of file 6809.c.

◆ cpu_mem_move_direct_size()

void cpu_mem_move_direct_size ( Environment * _environment,
char * _source,
char * _destination,
int _size )

Definition at line 5007 of file 6809.c.

◆ cpu_mem_move_indirect_direct_size()

void cpu_mem_move_indirect_direct_size ( Environment * _environment,
char * _source,
char * _destination,
int _size )

Definition at line 5123 of file 6809.c.

◆ cpu_mem_move_size()

void cpu_mem_move_size ( Environment * _environment,
char * _source,
char * _destination,
int _size )

Definition at line 4949 of file 6809.c.

◆ cpu_move_16bit()

void cpu_move_16bit ( Environment * _environment,
char * _source,
char * _destination )

CPU 6809: emit code to move 16 bit

CPU 6309: emit code to move 16 bit

Parameters
_environmentCurrent calling environment
_sourceSource of movement
_destinationDestination of movement

Definition at line 1474 of file 6809.c.

◆ cpu_move_16bit_indirect()

void cpu_move_16bit_indirect ( Environment * _environment,
char * _source,
char * _value )

Definition at line 5671 of file 6809.c.

◆ cpu_move_16bit_indirect2()

void cpu_move_16bit_indirect2 ( Environment * _environment,
char * _value,
char * _source )

Definition at line 5684 of file 6809.c.

◆ cpu_move_16bit_indirect2_8bit()

void cpu_move_16bit_indirect2_8bit ( Environment * _environment,
char * _value,
char * _offset,
char * _source )

Definition at line 5697 of file 6809.c.

◆ cpu_move_16bit_signed_32bit_signed()

void cpu_move_16bit_signed_32bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7812 of file 6809.c.

◆ cpu_move_16bit_signed_32bit_unsigned()

void cpu_move_16bit_signed_32bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7822 of file 6809.c.

◆ cpu_move_16bit_signed_8bit_signed()

void cpu_move_16bit_signed_8bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7787 of file 6809.c.

◆ cpu_move_16bit_signed_8bit_unsigned()

void cpu_move_16bit_signed_8bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7793 of file 6809.c.

◆ cpu_move_16bit_unsigned_32bit_signed()

void cpu_move_16bit_unsigned_32bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7833 of file 6809.c.

◆ cpu_move_16bit_unsigned_32bit_unsigned()

void cpu_move_16bit_unsigned_32bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7841 of file 6809.c.

◆ cpu_move_16bit_unsigned_8bit_signed()

void cpu_move_16bit_unsigned_8bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7799 of file 6809.c.

◆ cpu_move_16bit_unsigned_8bit_unsigned()

void cpu_move_16bit_unsigned_8bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7805 of file 6809.c.

◆ cpu_move_32bit()

void cpu_move_32bit ( Environment * _environment,
char * _source,
char * _destination )

CPU 6809: emit code to move 32 bit

CPU 6309: emit code to move 32 bit

Parameters
_environmentCurrent calling environment
_sourceSource of movement
_destinationDestination of movement

Definition at line 2524 of file 6809.c.

◆ cpu_move_32bit_indirect()

void cpu_move_32bit_indirect ( Environment * _environment,
char * _source,
char * _value )

Definition at line 5714 of file 6809.c.

◆ cpu_move_32bit_indirect2()

void cpu_move_32bit_indirect2 ( Environment * _environment,
char * _value,
char * _source )

Definition at line 5730 of file 6809.c.

◆ cpu_move_32bit_signed_16bit_signed()

void cpu_move_32bit_signed_16bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7875 of file 6809.c.

◆ cpu_move_32bit_signed_16bit_unsigned()

void cpu_move_32bit_signed_16bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7882 of file 6809.c.

◆ cpu_move_32bit_signed_8bit_signed()

void cpu_move_32bit_signed_8bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7850 of file 6809.c.

◆ cpu_move_32bit_signed_8bit_unsigned()

void cpu_move_32bit_signed_8bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7856 of file 6809.c.

◆ cpu_move_32bit_unsigned_16bit_signed()

void cpu_move_32bit_unsigned_16bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7889 of file 6809.c.

◆ cpu_move_32bit_unsigned_16bit_unsigned()

void cpu_move_32bit_unsigned_16bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7896 of file 6809.c.

◆ cpu_move_32bit_unsigned_8bit_signed()

void cpu_move_32bit_unsigned_8bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7862 of file 6809.c.

◆ cpu_move_32bit_unsigned_8bit_unsigned()

void cpu_move_32bit_unsigned_8bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7868 of file 6809.c.

◆ cpu_move_8bit()

void cpu_move_8bit ( Environment * _environment,
char * _source,
char * _destination )

CPU 6809: emit code to move 8 bit

CPU 6309: emit code to move 8 bit

Parameters
_environmentCurrent calling environment
_sourceSource of movement
_destinationDestination of movement

Definition at line 742 of file 6809.c.

◆ cpu_move_8bit_indirect()

void cpu_move_8bit_indirect ( Environment * _environment,
char * _source,
char * _value )

Definition at line 5571 of file 6809.c.

◆ cpu_move_8bit_indirect2()

void cpu_move_8bit_indirect2 ( Environment * _environment,
char * _value,
char * _source )

Definition at line 5626 of file 6809.c.

◆ cpu_move_8bit_indirect2_16bit()

void cpu_move_8bit_indirect2_16bit ( Environment * _environment,
char * _value,
char * _offset,
char * _source )

Definition at line 5655 of file 6809.c.

◆ cpu_move_8bit_indirect2_8bit()

void cpu_move_8bit_indirect2_8bit ( Environment * _environment,
char * _value,
char * _offset,
char * _source )

Definition at line 5639 of file 6809.c.

◆ cpu_move_8bit_indirect_with_offset()

void cpu_move_8bit_indirect_with_offset ( Environment * _environment,
char * _source,
char * _value,
int _offset )

Definition at line 5582 of file 6809.c.

◆ cpu_move_8bit_indirect_with_offset2()

void cpu_move_8bit_indirect_with_offset2 ( Environment * _environment,
char * _source,
char * _value,
char * _offset )

Definition at line 5594 of file 6809.c.

◆ cpu_move_8bit_signed_16bit_signed()

void cpu_move_8bit_signed_16bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7716 of file 6809.c.

◆ cpu_move_8bit_signed_16bit_unsigned()

void cpu_move_8bit_signed_16bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7724 of file 6809.c.

◆ cpu_move_8bit_signed_32bit_signed()

void cpu_move_8bit_signed_32bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7748 of file 6809.c.

◆ cpu_move_8bit_signed_32bit_unsigned()

void cpu_move_8bit_signed_32bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7758 of file 6809.c.

◆ cpu_move_8bit_unsigned_16bit_signed()

void cpu_move_8bit_unsigned_16bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7732 of file 6809.c.

◆ cpu_move_8bit_unsigned_16bit_unsigned()

void cpu_move_8bit_unsigned_16bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7740 of file 6809.c.

◆ cpu_move_8bit_unsigned_32bit_signed()

void cpu_move_8bit_unsigned_32bit_signed ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7768 of file 6809.c.

◆ cpu_move_8bit_unsigned_32bit_unsigned()

void cpu_move_8bit_unsigned_32bit_unsigned ( Environment * _environment,
char * _source,
char * _destination )

Definition at line 7777 of file 6809.c.

◆ cpu_move_8bit_with_offset2()

void cpu_move_8bit_with_offset2 ( Environment * _environment,
char * _source,
char * _value,
char * _offset )

Definition at line 5610 of file 6809.c.

◆ cpu_move_nbit()

void cpu_move_nbit ( Environment * _environment,
int _n,
char * _source,
char * _destination )

CPU cpu6809: emit code to store n bit

CPU cpu6309: emit code to store n bit

Parameters
_environmentCurrent calling environment
_destinationDestination of store
_nbits to store (>32)
_value[]Value to store (segmented in 32 bit each)

Definition at line 6897 of file 6809.c.

◆ cpu_move_nbit_indirect()

void cpu_move_nbit_indirect ( Environment * _environment,
int _n,
char * _source,
char * _value )

Definition at line 6960 of file 6809.c.

◆ cpu_move_nbit_indirect2()

void cpu_move_nbit_indirect2 ( Environment * _environment,
int _n,
char * _value,
char * _source )

Definition at line 7015 of file 6809.c.

◆ cpu_msc1_uncompress_direct_direct()

void cpu_msc1_uncompress_direct_direct ( Environment * _environment,
char * _input,
char * _output )

Definition at line 6613 of file 6809.c.

◆ cpu_msc1_uncompress_direct_indirect()

void cpu_msc1_uncompress_direct_indirect ( Environment * _environment,
char * _input,
char * _output )

Definition at line 6639 of file 6809.c.

◆ cpu_msc1_uncompress_indirect_direct()

void cpu_msc1_uncompress_indirect_direct ( Environment * _environment,
char * _input,
char * _output )

Definition at line 6655 of file 6809.c.

◆ cpu_msc1_uncompress_indirect_indirect()

void cpu_msc1_uncompress_indirect_indirect ( Environment * _environment,
char * _input,
char * _output )

Definition at line 6671 of file 6809.c.

◆ cpu_nop()

void cpu_nop ( Environment * _environment)

Definition at line 256 of file 6809.c.

◆ cpu_not_16bit()

void cpu_not_16bit ( Environment * _environment,
char * _value,
char * _result )

Definition at line 4580 of file 6809.c.

◆ cpu_not_32bit()

void cpu_not_32bit ( Environment * _environment,
char * _value,
char * _result )

Definition at line 4593 of file 6809.c.

◆ cpu_not_8bit()

void cpu_not_8bit ( Environment * _environment,
char * _value,
char * _result )

Definition at line 4568 of file 6809.c.

◆ cpu_number_to_string()

void cpu_number_to_string ( Environment * _environment,
char * _number,
char * _string,
char * _string_size,
int _bits,
int _signed )

Definition at line 6020 of file 6809.c.

◆ cpu_or_16bit()

void cpu_or_16bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4383 of file 6809.c.

◆ cpu_or_32bit()

void cpu_or_32bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4398 of file 6809.c.

◆ cpu_or_8bit()

void cpu_or_8bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4355 of file 6809.c.

◆ cpu_or_8bit_const()

void cpu_or_8bit_const ( Environment * _environment,
char * _left,
int _right,
char * _result )

Definition at line 4369 of file 6809.c.

◆ cpu_out()

void cpu_out ( Environment * _environment,
char * _port,
char * _value )

Definition at line 6687 of file 6809.c.

◆ cpu_out_direct()

void cpu_out_direct ( Environment * _environment,
char * _port,
char * _value )

Definition at line 6695 of file 6809.c.

◆ cpu_peek()

void cpu_peek ( Environment * _environment,
char * _address,
char * _target )

Definition at line 366 of file 6809.c.

◆ cpu_peekd()

void cpu_peekd ( Environment * _environment,
char * _address,
char * _target )

Definition at line 432 of file 6809.c.

◆ cpu_peekw()

void cpu_peekw ( Environment * _environment,
char * _address,
char * _target )

Definition at line 399 of file 6809.c.

◆ cpu_poke()

void cpu_poke ( Environment * _environment,
char * _address,
char * _source )

Definition at line 377 of file 6809.c.

◆ cpu_poke_const()

void cpu_poke_const ( Environment * _environment,
char * _address,
int _source )

Definition at line 388 of file 6809.c.

◆ cpu_poked()

void cpu_poked ( Environment * _environment,
char * _address,
char * _source )

Definition at line 445 of file 6809.c.

◆ cpu_poked_const()

void cpu_poked_const ( Environment * _environment,
char * _address,
int _source )

Definition at line 458 of file 6809.c.

◆ cpu_pokew()

void cpu_pokew ( Environment * _environment,
char * _address,
char * _source )

Definition at line 410 of file 6809.c.

◆ cpu_pokew_const()

void cpu_pokew_const ( Environment * _environment,
char * _address,
int _source )

Definition at line 421 of file 6809.c.

◆ cpu_pop()

void cpu_pop ( Environment * _environment)

Definition at line 4100 of file 6809.c.

◆ cpu_prepare_for_compare_and_branch_8bit()

void cpu_prepare_for_compare_and_branch_8bit ( Environment * _environment,
char * _source )

Definition at line 840 of file 6809.c.

◆ cpu_protothread_current()

void cpu_protothread_current ( Environment * _environment,
char * _current )

Definition at line 6583 of file 6809.c.

◆ cpu_protothread_get_address()

void cpu_protothread_get_address ( Environment * _environment,
char * _index,
char * _address )

Definition at line 6592 of file 6809.c.

◆ cpu_protothread_get_state()

void cpu_protothread_get_state ( Environment * _environment,
char * _index,
char * _state )

Definition at line 6571 of file 6809.c.

◆ cpu_protothread_loop()

void cpu_protothread_loop ( Environment * _environment)

Definition at line 6496 of file 6809.c.

◆ cpu_protothread_register()

void cpu_protothread_register ( Environment * _environment,
char * _label,
char * _index )

Definition at line 6515 of file 6809.c.

◆ cpu_protothread_register_at()

void cpu_protothread_register_at ( Environment * _environment,
char * _index,
char * _label )

Definition at line 6504 of file 6809.c.

◆ cpu_protothread_restore()

void cpu_protothread_restore ( Environment * _environment,
char * _index,
char * _step )

Definition at line 6548 of file 6809.c.

◆ cpu_protothread_save()

void cpu_protothread_save ( Environment * _environment,
char * _index,
int _step )

Definition at line 6537 of file 6809.c.

◆ cpu_protothread_set_state()

void cpu_protothread_set_state ( Environment * _environment,
char * _index,
int _state )

Definition at line 6560 of file 6809.c.

◆ cpu_protothread_unregister()

void cpu_protothread_unregister ( Environment * _environment,
char * _index )

Definition at line 6527 of file 6809.c.

◆ cpu_protothread_vars()

void cpu_protothread_vars ( Environment * _environment)

Definition at line 6477 of file 6809.c.

◆ cpu_random()

void cpu_random ( Environment * _environment,
char * _entropy )

Definition at line 4135 of file 6809.c.

◆ cpu_random_16bit()

void cpu_random_16bit ( Environment * _environment,
char * _entropy,
char * _result )

Definition at line 4200 of file 6809.c.

◆ cpu_random_32bit()

void cpu_random_32bit ( Environment * _environment,
char * _entropy,
char * _result )

Definition at line 4211 of file 6809.c.

◆ cpu_random_8bit()

void cpu_random_8bit ( Environment * _environment,
char * _entropy,
char * _result )

Definition at line 4189 of file 6809.c.

◆ cpu_register_decode()

int cpu_register_decode ( Environment * _environment,
char * _register )

Definition at line 3853 of file 6809.c.

◆ cpu_return()

void cpu_return ( Environment * _environment)

Definition at line 4090 of file 6809.c.

◆ cpu_set_asmio()

void cpu_set_asmio ( Environment * _environment,
int _asmio,
int _value )

Definition at line 3898 of file 6809.c.

◆ cpu_set_asmio_indirect()

void cpu_set_asmio_indirect ( Environment * _environment,
int _asmio,
char * _value )

Definition at line 3964 of file 6809.c.

◆ cpu_set_callback()

void cpu_set_callback ( Environment * _environment,
char * _callback,
char * _label )

Definition at line 6604 of file 6809.c.

◆ cpu_sqroot()

void cpu_sqroot ( Environment * _environment,
char * _number,
char * _result )

Definition at line 6447 of file 6809.c.

◆ cpu_store_16bit()

void cpu_store_16bit ( Environment * _environment,
char * _destination,
int _value )

CPU 6809: emit code to store 16 bit

CPU 6309: emit code to store 16 bit

Parameters
_environmentCurrent calling environment
_destinationDestination of store
_valueValue to store

Definition at line 1503 of file 6809.c.

◆ cpu_store_32bit()

void cpu_store_32bit ( Environment * _environment,
char * _destination,
int _value )

CPU 6809: emit code to store 32 bit

CPU 6309: emit code to store 32 bit

Parameters
_environmentCurrent calling environment
_destinationDestination of store
_valueValue to store

Definition at line 2544 of file 6809.c.

◆ cpu_store_8bit()

void cpu_store_8bit ( Environment * _environment,
char * _destination,
int _value )

CPU 6809: emit code to store 8 bit

CPU 6309: emit code to store 8 bit

Parameters
_environmentCurrent calling environment
_destinationDestination of store
_valueValue to store

Definition at line 760 of file 6809.c.

◆ cpu_store_8bit_with_offset()

void cpu_store_8bit_with_offset ( Environment * _environment,
char * _destination,
int _value,
int _offset )

Definition at line 6353 of file 6809.c.

◆ cpu_store_8bit_with_offset2()

void cpu_store_8bit_with_offset2 ( Environment * _environment,
char * _source,
char * _offset,
int _value )

Definition at line 6361 of file 6809.c.

◆ cpu_store_char()

void cpu_store_char ( Environment * _environment,
char * _destination,
int _value )

CPU 6809: emit code to store 8 bit

CPU 6309: emit code to store 8 bit

Parameters
_environmentCurrent calling environment
_destinationDestination of store
_valueValue to store

Definition at line 784 of file 6809.c.

◆ cpu_store_nbit()

void cpu_store_nbit ( Environment * _environment,
char * _destination,
int _n,
int _value[] )

CPU 6809: emit code to store n bit

CPU 6309: emit code to store n bit

Parameters
_environmentCurrent calling environment
_destinationDestination of store
_nbits to store (>32)
_value[]Value to store (segmented in 32 bit each)

Definition at line 6833 of file 6809.c.

◆ cpu_string_sub()

void cpu_string_sub ( Environment * _environment,
char * _source,
char * _source_size,
char * _pattern,
char * _pattern_size,
char * _destination,
char * _destination_size )

Definition at line 6704 of file 6809.c.

◆ cpu_swap_16bit()

void cpu_swap_16bit ( Environment * _environment,
char * _left,
char * _right )

Definition at line 4528 of file 6809.c.

◆ cpu_swap_32bit()

void cpu_swap_32bit ( Environment * _environment,
char * _left,
char * _right )

Definition at line 4542 of file 6809.c.

◆ cpu_swap_8bit()

void cpu_swap_8bit ( Environment * _environment,
char * _left,
char * _right )

Definition at line 4514 of file 6809.c.

◆ cpu_uppercase()

void cpu_uppercase ( Environment * _environment,
char * _source,
char * _size,
char * _result )

Definition at line 5746 of file 6809.c.

◆ cpu_xor_16bit()

void cpu_xor_16bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4445 of file 6809.c.

◆ cpu_xor_16bit_const()

void cpu_xor_16bit_const ( Environment * _environment,
char * _left,
int _right,
char * _result )

Definition at line 4460 of file 6809.c.

◆ cpu_xor_32bit()

void cpu_xor_32bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4476 of file 6809.c.

◆ cpu_xor_32bit_const()

void cpu_xor_32bit_const ( Environment * _environment,
char * _left,
int _right,
char * _result )

Definition at line 4495 of file 6809.c.

◆ cpu_xor_8bit()

void cpu_xor_8bit ( Environment * _environment,
char * _left,
char * _right,
char * _result )

Definition at line 4417 of file 6809.c.

◆ cpu_xor_8bit_const()

void cpu_xor_8bit_const ( Environment * _environment,
char * _left,
int _right,
char * _result )

Definition at line 4431 of file 6809.c.

◆ cpu_ztoa()

void cpu_ztoa ( Environment * _environment)

Definition at line 262 of file 6809.c.