/** Type of copper instruction */ export declare enum CopperInstructionType { MOVE = 0, WAIT = 1, SKIP = 2 } /** * Disassemble memory into copper instructions */ export declare function disassembleCopper(memory: string): CopperInstruction[]; /** * Copper instruction */ export declare class CopperInstruction { instructionType: CopperInstructionType; first: number; second: number; constructor(instructionType: CopperInstructionType, first: number, second: number); static parse(instructionString: string): CopperInstruction; getAsmInstruction(): string; getInstructionBytes(): string; protected getPaddedAsmInstruction(): string; protected format(value: number): string; } export declare class CopperMove extends CopperInstruction { DA: number; RD: number; /** Understandable label */ label: string | undefined; constructor(first: number, second: number); toString(): string; } export declare class CopperCondition extends CopperInstruction { /** Vertical beam position unmasked */ VP: number; /** Horizontal beam position unmasked */ HP: number; /** blitter-finished disable */ BFD: number; /** Vertical enable comparison (mask bit) */ VE: number; /** Horizontal enable comparison (mask bit) */ HE: number; /** Vertical beam position */ vertical: number; /** Horizontal beam position */ horizontal: number; constructor(instructionType: CopperInstructionType, first: number, second: number); } export declare class CopperWait extends CopperCondition { constructor(first: number, second: number); toString(): string; isEnd(): boolean; } export declare class CopperSkip extends CopperCondition { constructor(first: number, second: number); toString(): string; }