Hi
I was thinking to use qemu-system-arm to test my kernel, but qemu-system-arm -kernel is used to load a linux kernel image what about my kernel should be just a binary file starting at 0x0 or there is a special magic words or signatures should be there???
I want to print a character on the screen, i know that arm uses serial to port so i've to write to the port, but qemu simulates an LCD for linux how could i write to it??? can any one give a simple example on printing a character on qemu-arm or any other useful simulator???
Thanks alot
I like osdev. It is always useful to ask here
ARM
I faced the same problem with my kernel when I started to use QEMU, and I did not find any solution to force QEMU to load my plain binary file to specific address (by default if I remember correctly the plain binary is loaded into address 0x10000) but then I realised that the QEMU can take normal elf-file as an input and that basically solved my problem. So nowadays I'm generating binary file (which I'm using in actual target hardware) and elf-file which can be loaded to QEMU to address specified in my makefile i.e. 0x0. The development tool I'm using is WinARM (which uses GNU GCC) so depending on what tools you are using I think that you can also generate elf-file and give that file directly to QEMU.I was thinking to use qemu-system-arm to test my kernel, but qemu-system-arm -kernel is used to load a linux kernel image what about my kernel should be just a binary file starting at 0x0 or there is a special magic words or signatures should be there???
QEMU simulates different ARM boards for example ARM Integrator/CP and Versatile boards, which has LCD controller and I think that the linux is controlling that LCD controller in order to print something into simulated "LCD". Supported LCD controllers (PL110 LCD) are documented in QEMU www-page, see http://fabrice.bellard.free.fr/qemu/qemu-doc.html#SEC63 so if you want to print something into LCD then you need to read the HW specifications of that particular LCD controller to learn how to control LCD controller and how to write pixels into screen in order to create characters.I want to print a character on the screen, i know that arm uses serial to port so i've to write to the port, but qemu simulates an LCD for linux how could i write to it??? can any one give a simple example on printing a character on qemu-arm or any other useful simulator???
Also I think that your previous questions are much related to QEMU itself and maybe the better place to ask these questions is QEMU forum, see http://qemu-forum.ipi.fi/
The WinARM package has several example ARM projects, which will generate elf-file among others. The best way is to open simple example project and study how the makefile is done and then modify that to contain own c/s files.what should be my linker script?
The command I'm using to run QEMU is:
qemu-system-arm.exe -L . -kernel image.elf -M integratorcp926