;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; RDOS operating system
; Copyright (C) 1988-2000, Leif Ekblad
;
; This program is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2 of the License, or
; (at your option) any later version. The only exception to this rule
; is for commercial usage in embedded systems. For information on
; usage in commercial embedded systems, contact embedded@rdos.net
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, write to the Free Software
; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
;
; The author of this program may be contacted at leif@rdos.net
;
; ELF.DEF
; Common ELF loader types
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

app_fs_data	STRUC

afs_reent	DD ?
afs_tls     DD ?

app_fs_data	ENDS

EFC32 = 1
EFC64 = 2

EELSB = 1
EEMSB = 1

EOSABI_SYSV = 0

ET_EXEC = 2
ET_DYN = 3

elf_header	STRUC

elf_magic		DD ?
elf_file_class	DB ?
elf_endian		DB ?
elf_hdr_ver     DB ?
elf_abi         DB ?
elf_abi_ver     DB ?
elf_reserved	DB 7 DUP(?)
elf_type		DW ?
elf_machine		DW ?
elf_version		DD ?
elf_entry		DQ ?
elf_phoff		DQ ?
elf_shoff		DQ ?
elf_flags		DD ?
elf_ehsize		DW ?
elf_phentsize	DW ?
elf_phnum		DW ?
elf_shentsize	DW ?
elf_shnum		DW ?
elf_shstrndx	DW ?

elf_header	ENDS

elf_prog_header STRUC

elfp_type       DD ?
elfp_flags      DD ?
elfp_offset     DQ ?
elfp_vaddr      DQ ?
elfp_paddr      DQ ?
elfp_filez      DQ ?
elfp_memsz      DQ ?
elfp_align      DQ ?

elf_prog_header ENDS

elf_sect_header STRUC

elfs_name       DD ?
elfs_type       DD ?
elfs_flags      DQ ?
elfs_vaddr      DQ ?
elfs_paddr      DQ ?
elfs_size       DQ ?
elfs_link       DD ?
elfs_info       DD ?
elfs_align      DQ ?
elfs_entsize    DQ ?

elf_sect_header ENDS

elf_tls_header  STRUC

elft_paddr      DD ?
elft_psize      DD ?
elft_vsize      DD ?
elft_data       DD ?

elf_tls_header  ENDS
