* Ada UEFI programming
@ 2017-03-24 9:53 George J
2017-03-24 18:22 ` Lucretia
0 siblings, 1 reply; 9+ messages in thread
From: George J @ 2017-03-24 9:53 UTC (permalink / raw)
Hi all!I know about C/Cpp,asm UEFI programming. So I have a question, does here anyone built uefi (.efi) file using Ada, or does anyone have experience with connecting EDK II or UDK with Ada? I'm asking for, cause I want to know, is it really possible? I've spent a few days trying to develop simple UEFI app with GNAT GPS and now I need help, cause I can't waste time anymore.
Thanks!
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-24 9:53 Ada UEFI programming George J
@ 2017-03-24 18:22 ` Lucretia
2017-03-25 7:39 ` Dirk Heinrichs
2017-03-27 6:33 ` George J
0 siblings, 2 replies; 9+ messages in thread
From: Lucretia @ 2017-03-24 18:22 UTC (permalink / raw)
On Friday, 24 March 2017 09:53:38 UTC, George J wrote:
> Hi all!I know about C/Cpp,asm UEFI programming. So I have a question, does here anyone built uefi (.efi) file using Ada, or does anyone have experience with connecting EDK II or UDK with Ada? I'm asking for, cause I want to know, is it really possible? I've spent a few days trying to develop simple UEFI app with GNAT GPS and now I need help, cause I can't waste time anymore.
> Thanks!
Of course it's possible. You just need a windows gnat and bindings for uefi.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-24 18:22 ` Lucretia
@ 2017-03-25 7:39 ` Dirk Heinrichs
2017-03-26 12:01 ` Luke A. Guest
2017-03-27 6:33 ` George J
1 sibling, 1 reply; 9+ messages in thread
From: Dirk Heinrichs @ 2017-03-25 7:39 UTC (permalink / raw)
Am 24.03.2017 um 19:22 schrieb Lucretia:
> You just need a windows gnat
So a Linux or FreeBSD Gnat won't do it? If so, why?
Thanks a lot...
Dirk
--
Dirk Heinrichs <dirk.heinrichs@altum.de>
GPG Public Key: D01B367761B0F7CE6E6D81AAD5A2E54246986015
Sichere Internetkommunikation: http://www.retroshare.org
Privacy Handbuch: https://www.privacy-handbuch.de
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-25 7:39 ` Dirk Heinrichs
@ 2017-03-26 12:01 ` Luke A. Guest
0 siblings, 0 replies; 9+ messages in thread
From: Luke A. Guest @ 2017-03-26 12:01 UTC (permalink / raw)
Dirk Heinrichs <dirk.heinrichs@altum.de> wrote:
> Am 24.03.2017 um 19:22 schrieb Lucretia:
>
>> You just need a windows gnat
>
> So a Linux or FreeBSD Gnat won't do it? If so, why?
>
It will, you just need to use a cross compiler.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-24 18:22 ` Lucretia
2017-03-25 7:39 ` Dirk Heinrichs
@ 2017-03-27 6:33 ` George J
2017-03-27 8:09 ` Luke A. Guest
1 sibling, 1 reply; 9+ messages in thread
From: George J @ 2017-03-27 6:33 UTC (permalink / raw)
>
> Of course it's possible. You just need a windows gnat and bindings for uefi.
Lucretia,thanks.I've tried to find uefi bindings for Ada or some simple examples, and had no result.Maybe i don't know, where to find it?Or i have to make it by myself?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-27 6:33 ` George J
@ 2017-03-27 8:09 ` Luke A. Guest
2017-03-27 17:49 ` Qun-Ying
0 siblings, 1 reply; 9+ messages in thread
From: Luke A. Guest @ 2017-03-27 8:09 UTC (permalink / raw)
George J <ivanov_george@list.ru> wrote:
>>
>> Of course it's possible. You just need a windows gnat and bindings for uefi.
>
> Lucretia,thanks.I've tried to find uefi bindings for Ada or some simple
> examples, and had no result.Maybe i don't know, where to find it?Or i
> have to make it by myself?
>
UEFI apps need to be in PE format, which is Microsoft's variation of COFF.
You'll likely need your own bindings as I don't think anyone has done it
yet. I certainly haven't got around to it.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-27 8:09 ` Luke A. Guest
@ 2017-03-27 17:49 ` Qun-Ying
2017-03-28 7:48 ` George J
0 siblings, 1 reply; 9+ messages in thread
From: Qun-Ying @ 2017-03-27 17:49 UTC (permalink / raw)
According to http://www.rodsbooks.com/refind/getting.html, in Linux, you
may need the TianoCore EFI Development Kit 2 (EDK2)
(https://sourceforge.net/projects/tianocore/) or GNU-EFI development
tools (https://sourceforge.net/projects/gnu-efi/).
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-27 17:49 ` Qun-Ying
@ 2017-03-28 7:48 ` George J
2017-03-28 16:09 ` Lucretia
0 siblings, 1 reply; 9+ messages in thread
From: George J @ 2017-03-28 7:48 UTC (permalink / raw)
Ok,thanks to all! Hope, it will be possible!)
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Ada UEFI programming
2017-03-28 7:48 ` George J
@ 2017-03-28 16:09 ` Lucretia
0 siblings, 0 replies; 9+ messages in thread
From: Lucretia @ 2017-03-28 16:09 UTC (permalink / raw)
On Tuesday, 28 March 2017 08:48:53 UTC+1, George J wrote:
> Ok,thanks to all! Hope, it will be possible!)
Of course it's possible.
You have read these right?
http://wiki.osdev.org/PE
http://wiki.osdev.org/UEFI#GNU-EFI_and_GCC
You need an x86_64-pe targetted gcc cross compiler, you can then follow what I've done http://wiki.osdev.org/Ada_Bare_bones and https://github.com/Lucretia/bare_bones (this is more up to date than the osdev link as I now have a secondary stack) for a bare metal runtime to target this kind of application area.
You would use gcc to generate a binding from a uefi.h file (if there is one), or just bind as you normally would.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2017-03-28 16:09 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-24 9:53 Ada UEFI programming George J
2017-03-24 18:22 ` Lucretia
2017-03-25 7:39 ` Dirk Heinrichs
2017-03-26 12:01 ` Luke A. Guest
2017-03-27 6:33 ` George J
2017-03-27 8:09 ` Luke A. Guest
2017-03-27 17:49 ` Qun-Ying
2017-03-28 7:48 ` George J
2017-03-28 16:09 ` Lucretia
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox