.ELF files?

Understanding the language, error messages, etc.

.ELF files?

Postby microgamer » Sat Aug 16, 2014 8:17 am

I downloaded the brilliant Paqman and ran it on the new emulator, looking at the extract from the ZIP I saw an .ELF file.
Since this is >32k I guess it is never loaded into the Gambuino, so what does this file do please?
microgamer
 
Posts: 8
Joined: Tue Aug 12, 2014 9:13 am

Re: .ELF files?

Postby yodasvideoarcade » Sat Aug 16, 2014 8:35 am

Thanks for the praise!

I also don't know what the .ELF does, but they say it should be included. So what does it do? Why is it needed?
User avatar
yodasvideoarcade
 
Posts: 102
Joined: Sat Apr 19, 2014 10:48 am
Location: Frankfurt/Germany

Re: .ELF files?

Postby rodot » Sat Aug 16, 2014 9:47 am

.ELF files (Executable and Linkable Format) are needed to run your game on the gbsim emulator.
.HEX files can be put on the micro SD card to load games with the bootoader or run in the simbuino emulator.
These files can be over 32KB because they also store extra stuff like addresses an whatnot.
User avatar
rodot
Site Admin
 
Posts: 1290
Joined: Mon Nov 19, 2012 11:54 pm
Location: France

Re: .ELF files?

Postby Myndale » Sun Aug 17, 2014 6:58 am

Just clarify Rodot's answer...both ELF and HEX have their own pages on Wikipedia:

http://en.wikipedia.org/wiki/Executable ... ble_Format
http://en.wikipedia.org/wiki/Intel_HEX

In short, ELF is a binary format that can be used to represent programs, libraries and data. It also contains a lot of additional information about the source that was used to generate the code, which is needed by debuggers for things like symbolic debugging.

HEX, on the other hand, was designed to contain the bare minimum needed to upload a program to the target hardware. If you're doing things like storing games on SD card then the upload process occurs on the target hardware and is prone to errors, so HEX represents the program as text strings and breaks it down into a series of packets (e.g. 16 bytes per line) with checksums at the end of each line. In the case of Gamebuino it is the bootloader that parses the HEX files and writes them to Flash.

I haven't gotten around to looking at Denith's emulator yet but if it only loads ELF files then it would make sense for people to ship both the ELF for the emulator and the HEX for the real hardware. I chose to make my Simbuino emulator load HEX files because it's the only way to guarantee that it will run all games...not everyone may be willing to release their ELF files, but they have to release their HEX files if they want others to be able to run their game.
Myndale
 
Posts: 507
Joined: Sat Mar 01, 2014 1:25 am

Re: .ELF files?

Postby DFX2KX » Tue Aug 26, 2014 10:44 pm

I think Deneths emulator likes ELFs because that's what AVsim uses, and his emulator is built on top of that.
DFX2KX
 
Posts: 250
Joined: Mon Apr 14, 2014 3:48 am


Return to Programming Questions

Who is online

Users browsing this forum: No registered users and 7 guests