## -- ## -- This file is automatically generated by the DragonAssembler (version 0.4.1602) ## -- Please do not modify this file in any way. ## -- ## These are the base addresses of the memory map. @group MemoryAddresses MBR 0x1380 INT_VEC 0x1080 DISK_INTERFACE 0x1580 RAM 0x1740 CMOS 0x1000 VGA 0x1600 @end ## -- ## These are the Hardware Interrupt codes of this machine. @group HW_Int DISK_INTERFACE_FINISHED 0x80 KEY_PRESSED 0xA0 KEY_RELEASED 0xA1 TEXT_ENTERED 0xA2 TEXT16_SCREEN_REFRESHED 0xE0 @end ## -- ## These are the memory-mapped registers used to interact with the video card's interface. @group VGA_Registers VIDEO_MODE { MemoryAddresses.VGA + 0x0000 } CLEAR_COLOR { MemoryAddresses.VGA + 0x0001 } PALETTE { MemoryAddresses.VGA + 0x0002 } SIGNAL { MemoryAddresses.VGA + 0x0003 } TEXT_SINGLE_CHAR { MemoryAddresses.VGA + 0x0004 } TEXT_SIGNLE_INVERT { MemoryAddresses.VGA + 0x0005 } TEXT_SIGNLE_STR { MemoryAddresses.VGA + 0x0006 } MEMORY_CONTROLLER_X { MemoryAddresses.VGA + 0x0080 } MEMORY_CONTROLLER_X_BYTE { MemoryAddresses.VGA + 0x0080 + 1 } MEMORY_CONTROLLER_Y { MemoryAddresses.VGA + 0x0082 } MEMORY_CONTROLLER_Y_BYTE { MemoryAddresses.VGA + 0x0082 + 1 } MEMORY_CONTROLLER_CHAR { MemoryAddresses.VGA + 0x0084 } MEMORY_CONTROLLER_BG_COL { MemoryAddresses.VGA + 0x0085 } MEMORY_CONTROLLER_FG_COL { MemoryAddresses.VGA + 0x0086 } BUFF_START { MemoryAddresses.VGA + 0x00E0 } @end ## -- ## These are the different Video Modes that the video card supports. @group VGA_VideoModes TEXT_SINGLE_COLOR 0x00 TEXT_16_COLORS 0x01 @end ## -- ## These are signals used to comunicate with the video card's interface, when in TEXT_SINGLE_COLOR mode. @group Sig_VGA_Text_Single_Color CONTINUE 0x00 PRINT_CHAR 0x02 STORE_CHAR 0x03 PRINT_FLUSH_BUFF 0x04 FLUSH_BUFF 0x05 PRINT_BUFF 0x06 PRINT_STRING 0x07 REFRESH_SCREEN 0xE0 CLEAR_SCREEN 0xE1 @end ## -- ## These are signals used to comunicate with the video card's interface, when in TEXT16_COLOR mode. @group Sig_VGA_Text_16_Color CONTINUE 0x00 READ_VRAM 0x10 WRITE_VRAM 0x11 FORCE_REFRESH_SCREEN 0xE0 FORCE_CLEAR_SCREEN 0xE1 @end ## -- ## Structure of a DPT (Dragon Partition Table). @group DPTStructure DISK_ADDR 0x0200 ENTRIES_START 0x000C ENTRY_START_ADDR 0x0000 ENTRY_PART_SIZE 0x0004 ENTRY_FLAGS 0x0008 ENTRY_PART_LBL 0x0024 ID_CODE 0xF1CA ENTRY_SIZE_B 100 @end ## -- ## Structure to store a DPT block. @struct DPTBlock ID:2 VersionMaj:1 VersionMin:1 PartCount:1 Reserved:7 Entries:500 @end ## -- ## Structure to store a character cell for the Text16-Video-Mode. @struct Text16VModeCell Character:1 Foreground:1 Background:1 CoordX:1 CoordY:1 @end ## --