All functions

asm_patterns

Regex patterns for parsing 6502 assembly

compile()

Compile ASM to a c64 exectuable (in PRG format)

create_line_tokens()

Split each ASM line into tokens

create_prg_df()

Create the main compiler datastructure 'prg_df' from a list of `line_tokens`

create_prg_df_row()

Determine the opcode, address mode etc for a sequence of tokens representing a single instruction

extract_prg_bytes()

Extract the raw bytes for the assembled PRG

get_opcode_info()

Determine the opcode, address mode etc for a sequence of tokens representing a single instruction

h2i()

Hex (character strings) to integer values

hi()

Fetch the high byte of a 16bit address

lo()

Fetch the low byte of a 16bit address

opcodes

Reference list of opcode information

process_symbols()

Process any cross-referenced symbols to insert actual addresse/values

process_zero_padding()

Pad out with zero bytes between address blocks

s2i()

String to ASM for ".text" code

save_prg()

Save the PRG to file

w2b()

Convert a 16bit address to 2 bytes (lo_byte, hi_byte) as is the 6502 way