Contants

Various functions in bare68k require a constant value. All the constants are found in the bare68k.consts module.

CPU Types

bare68k.consts.M68K_CPU_TYPE_INVALID = 0

invalid CPU type.

bare68k.consts.M68K_CPU_TYPE_68000 = 1

Motorola 68000 CPU

bare68k.consts.M68K_CPU_TYPE_68010 = 2

Motorola 68010 CPU

bare68k.consts.M68K_CPU_TYPE_68EC020 = 3

Motorola 68EC20 CPU

bare68k.consts.M68K_CPU_TYPE_68020 = 4

Motorola 68020 CPU

bare68k.consts.M68K_CPU_TYPE_68030 = 5

Motorola 68030 CPU

Note

Supported by disassembler ONLY

bare68k.consts.M68K_CPU_TYPE_68040 = 6

Motorola 68040 CPU

Note

Supported by disassembler ONLY

CPU Registers

Data Registers

bare68k.consts.M68K_REG_D0 = 0

Data Register D0

bare68k.consts.M68K_REG_D1 = 1

Data Register D1

bare68k.consts.M68K_REG_D2 = 2

Data Register D2

bare68k.consts.M68K_REG_D3 = 3

Data Register D3

bare68k.consts.M68K_REG_D4 = 4

Data Register D4

bare68k.consts.M68K_REG_D5 = 5

Data Register D5

bare68k.consts.M68K_REG_D6 = 6

Data Register D6

bare68k.consts.M68K_REG_D7 = 7

Data Register D7

Address Registers

bare68k.consts.M68K_REG_A0 = 8

Address Register A0

bare68k.consts.M68K_REG_A1 = 9

Address Register A1

bare68k.consts.M68K_REG_A2 = 10

Address Register A2

bare68k.consts.M68K_REG_A3 = 11

Address Register A3

bare68k.consts.M68K_REG_A4 = 12

Address Register A4

bare68k.consts.M68K_REG_A5 = 13

Address Register A5

bare68k.consts.M68K_REG_A6 = 14

Address Register A6

bare68k.consts.M68K_REG_A7 = 15

Address Register A7

Special Registers

bare68k.consts.M68K_REG_PC = 16

Program Counter PC

bare68k.consts.M68K_REG_SR = 17

Status Register SR

bare68k.consts.M68K_REG_SP = 18

The current Stack Pointer (located in A7)

bare68k.consts.M68K_REG_USP = 19

User Stack Pointer USP

bare68k.consts.M68K_REG_ISP = 20

Interrupt Stack Pointer ISP

bare68k.consts.M68K_REG_MSP = 21

Master Stack Pointer MSP

bare68k.consts.M68K_REG_SFC = 22

Source Function Code SFC

bare68k.consts.M68K_REG_DFC = 23

Destination Function Code DFC

bare68k.consts.M68K_REG_VBR = 24

Vector Base Register VBR

bare68k.consts.M68K_REG_CACR = 25

Cache Control Register CACR

bare68k.consts.M68K_REG_CAAR = 26

Cache Address Register CAAR

Virtual Registers

bare68k.consts.M68K_REG_PREF_ADDR = 27

Virtual Reg – Last prefetch address

bare68k.consts.M68K_REG_PREF_DATA = 28

Virtual Reg – Last prefetch data

bare68k.consts.M68K_REG_PPC = 29

Virtual Reg – Previous value in the program counter

bare68k.consts.M68K_REG_IR = 30

Instruction register IR

bare68k.consts.M68K_REG_CPU_TYPE = 31

Virtual Reg – Type of CPU being run

Interrupt Ack Special Values

bare68k.consts.M68K_INT_ACK_AUTOVECTOR = 4294967295

interrupt acknowledge to perform autovectoring

bare68k.consts.M68K_INT_ACK_SPURIOUS = 4294967294

interrupt acknowledge to cause spurios irq

Memory Flags

Memory Range Create Flags

bare68k.consts.MEM_FLAGS_READ = 1

a readable region

bare68k.consts.MEM_FLAGS_WRITE = 2

a writeable region

bare68k.consts.MEM_FLAGS_RW = 3

a read/write region

bare68k.consts.MEM_FLAGS_TRAPS = 4

bit flag to allow a-line traps in this region

Note

Or this flag with the read/write flags

Memory Access Type

bare68k.consts.MEM_ACCESS_R8 = 17

byte read access

bare68k.consts.MEM_ACCESS_R16 = 18

word read access

bare68k.consts.MEM_ACCESS_R32 = 20

long read access

bare68k.consts.MEM_ACCESS_W8 = 33

byte write access

bare68k.consts.MEM_ACCESS_W16 = 34

word write access

bare68k.consts.MEM_ACCESS_W32 = 36

long write access

bare68k.consts.MEM_ACCESS_MASK = 255

constant mask to filter out memory access values

Access Function Code

bare68k.consts.MEM_FC_MASK = 65280

constant mask to filter out memory access function code

bare68k.consts.MEM_FC_USER_DATA = 4352

access of user data

bare68k.consts.MEM_FC_USER_PROG = 4608

access of user program

bare68k.consts.MEM_FC_SUPER_DATA = 8448

access of supervisor data

bare68k.consts.MEM_FC_SUPER_PROG = 8704

access of supervisor program

bare68k.consts.MEM_FC_INT_ACK = 16384

access during interrupt acknowledge

Function Code Masks

bare68k.consts.MEM_FC_DATA_MASK = 256

constant mask for user or supervisor data access

bare68k.consts.MEM_FC_PROG_MASK = 512

constant mask for user or supervisor program access

bare68k.consts.MEM_FC_USER_MASK = 4096

constant mask for user data or program access

bare68k.consts.MEM_FC_SUPER_MASK = 8192

constant mask for supervisor data or program access

bare68k.consts.MEM_FC_INT_MASK = 16384

constant mask for interrupt acknowledge

API Special Memory Operations

bare68k.consts.MEM_ACCESS_R_BLOCK = 4352

read memory block

bare68k.consts.MEM_ACCESS_W_BLOCK = 4608

write memory block

bare68k.consts.MEM_ACCESS_R_CSTR = 8448

read C-string

bare68k.consts.MEM_ACCESS_W_CSTR = 8704

write C-string

bare68k.consts.MEM_ACCESS_R_BSTR = 12544

read BCPL-string

bare68k.consts.MEM_ACCESS_W_BSTR = 12800

write BCPL-string

bare68k.consts.MEM_ACCESS_R_B32 = 16640

read BPCL long (shifted to left one bit)

bare68k.consts.MEM_ACCESS_W_B32 = 16896

write BCPL long (shifted to right one bit)

bare68k.consts.MEM_ACCESS_BSET = 21504

set a memory block to a value

bare68k.consts.MEM_ACCESS_BCOPY = 25600

copy a memory block

Trap Create Flags

bare68k.consts.TRAP_DEFAULT = 0

a default A-Line trap, multi shot, no rts

bare68k.consts.TRAP_ONE_SHOT = 1

flag, a one shot trap, is auto-removed after invocation

bare68k.consts.TRAP_AUTO_RTS = 2

flag, automatically perform a RTS after trap processing

CPU Events

bare68k.consts.CPU_EVENT_CALLBACK_ERROR = 0

a Python callback triggered by the CPU emulator caused an Error or Exception

bare68k.consts.CPU_EVENT_RESET = 1

a RESET opcode was encountered

bare68k.consts.CPU_EVENT_ALINE_TRAP = 2

an A-Line Trap opcode was executed

bare68k.consts.CPU_EVENT_MEM_ACCESS = 3

a memory region was accessed with invalid op.

E.g. a read-only region was written to

bare68k.consts.CPU_EVENT_MEM_BOUNDS = 4

a memory access beyond the allocated page range occurred

bare68k.consts.CPU_EVENT_MEM_TRACE = 5

a memory trace callback in Python returned some value

bare68k.consts.CPU_EVENT_MEM_SPECIAL = 6

a special range memory region was triggered and the handler returned a value

bare68k.consts.CPU_EVENT_INSTR_HOOK = 7

the instruction trace handler was triggered and returned a value

bare68k.consts.CPU_EVENT_INT_ACK = 8

interrupt acknowledge handler was triggered and returned a value

bare68k.consts.CPU_EVENT_WATCHPOINT = 10

a watchpoint was hit

bare68k.consts.CPU_EVENT_TIMER = 11

a timer fired

bare68k.consts.CPU_NUM_EVENTS = 12

total number of machine CPU events

bare68k.consts.CPU_EVENT_USER_ABORT = 12

runtime flag, user aborted run with a KeyboardInterrupt

bare68k.consts.CPU_EVENT_DONE = 13

runtime flag, reached end of processing.

E.g. a RESET opcode was encountered.