source: buchla-68k/include/objdefs.h@ f7428b1

Last change on this file since f7428b1 was f7428b1, checked in by Thomas Lopatic <thomas@…>, 7 years ago

Started to rework include files.

  • Property mode set to 100644
File size: 1.4 KB
Line 
1/*
2 ============================================================================
3 objdefs.h -- Object file format for as68 (Atari 1040ST TOS objects)
4 Version 7 -- 1987-12-30 -- D.N. Lynx Crowe
5 ============================================================================
6*/
7
8#pragma once
9#include "stdint.h"
10
11struct EXFILE { /* executable file header */
12
13 uint16_t F_Magic; /* File type magic */
14 int32_t F_Text; /* SIze of text segment */
15 int32_t F_Data; /* Size of data segment */
16 int32_t F_BSS; /* Size of BSS segment */
17 int32_t F_Symtab; /* Size of symbol table */
18 int32_t F_Res1; /* Reserved area #1 */
19 int32_t F_Res2; /* Reserved area #2 -- text origin */
20 uint16_t F_Res3; /* Reserved area #3 -- flag word */
21
22 /* data origin - long */
23 /* bss origin - long */
24};
25
26#define F_R_C 0x601A /* Magic for contiguous file */
27#define F_R_D 0x601B /* Magic for discontiguous file */
28
29struct SYMBOL { /* Symbol table entry -- 14 bytes */
30
31 int8_t symname[8]; /* Symbol name (LJZF) */
32 uint16_t symtype; /* Symbol type flags */
33 int32_t symvalue; /* Symbol value */
34};
35
36#define S_Def 0x8000 /* Defined */
37#define S_Equ 0x4000 /* Equated */
38#define S_Glb 0x2000 /* Global */
39#define S_Reg 0x1000 /* Equated register */
40#define S_Ext 0x0800 /* External reference */
41#define S_Data 0x0400 /* Data based relocatable */
42#define S_Text 0x0200 /* Text based relocatable */
43#define S_BSS 0x0100 /* BSS based relocatable */
Note: See TracBrowser for help on using the repository browser.