On Mon, Jul 30, 2018 at 07:01:53PM +0100, Peter Maydell wrote: > On 25 July 2018 at 09:59, Stefan Hajnoczi wrote: > > From: Su Hang > > > > This patch adds Intel Hexadecimal Object File format support to the > > loader. The file format specification is available here: > > http://www.piclist.com/techref/fileext/hex/intel.htm > > > > This file format is often used with microcontrollers such as the > > micro:bit, Arduino, STM32, etc. Users expect to be able to run them > > directly with qemu -kernel program.hex instead of converting to ELF or > > binary. > > I'm still not convinced we want to add another random > special case only-works-on-one-architecture-and-some-boards > feature to the -kernel command line option. > > Adding it to the "generic loader" device might be more plausible? I'll look into this and let you know what I find. > Or just get the user to create ELF files or plain binary files, > both of which we already handle. Plain binary definitely won't work because the .hex files contain sparse (discontiguous) data. But even using ELF would be very inconvenient to users since .hex is *the* format that micro:bit IDEs and toolchains use. Our goal is for less technical users (even kids learning to program) to use QEMU has a micro:bit simulator, so the ability to directly use .hex files is very important. Stefan