#ifndef _VM_DI_H_ #define _VM_DI_H_ enum vm_di_entry { VM_CPU, VM_MACHINE, VM_REFLECT, VM_OUTPUT, // This is a function which can be used to pause the running machine VM_PAUSE_FUNC, // This function will both 1) pause the machine, and 2) open the // debugger VM_DEBUG_FUNC, // These are the physical width and height of the emulator window VM_WIDTH, VM_HEIGHT, // These are file streams that correspond to disk inputs; e.g., in // an apple context, these would be from disk drives 1 and 2 VM_DISK1, VM_DISK2, // The log file to which we will output our disassembly VM_DISASM_LOG, // This value is the size of the DI container we will construct. As // you can see, it's quite a bit higher than what would be implied // by the number of enum values currently defined--and it is so we // don't have to update this value every time we add a new value. // But be wary that you don't add so many entries as to go beyond // VM_DI_SIZE's defined value! VM_DI_SIZE = 100, }; extern void *vm_di_get(int); extern int vm_di_set(int, void *); #endif