mirror of
https://gitlab.com/qemu-project/openbios.git
synced 2024-02-13 08:34:06 +08:00
Add Fcode as a suitable executable payload for init-program.
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@659 f158a5a8-5612-0410-a976-696ce0be7e32
This commit is contained in:
@@ -262,6 +262,40 @@ variable bootinfo-size
|
|||||||
then
|
then
|
||||||
;
|
;
|
||||||
|
|
||||||
|
: fcode?
|
||||||
|
" load-base" evaluate c@
|
||||||
|
dup h# f0 = if \ start0
|
||||||
|
drop
|
||||||
|
true
|
||||||
|
exit
|
||||||
|
then
|
||||||
|
dup h# f1 = if \ start1
|
||||||
|
drop
|
||||||
|
true
|
||||||
|
exit
|
||||||
|
then
|
||||||
|
dup h# f2 = if \ start2
|
||||||
|
drop
|
||||||
|
true
|
||||||
|
exit
|
||||||
|
then
|
||||||
|
dup h# f3 = if \ start4
|
||||||
|
drop
|
||||||
|
true
|
||||||
|
exit
|
||||||
|
then
|
||||||
|
h# fd = if \ version1
|
||||||
|
true
|
||||||
|
exit
|
||||||
|
then
|
||||||
|
false
|
||||||
|
;
|
||||||
|
|
||||||
|
: init-program-fcode
|
||||||
|
" load-base" evaluate 8 +
|
||||||
|
1 byte-load
|
||||||
|
;
|
||||||
|
|
||||||
: init-program ( -- )
|
: init-program ( -- )
|
||||||
elf? if
|
elf? if
|
||||||
init-program-elf
|
init-program-elf
|
||||||
@@ -279,6 +313,10 @@ variable bootinfo-size
|
|||||||
init-program-bootinfo
|
init-program-bootinfo
|
||||||
exit
|
exit
|
||||||
then
|
then
|
||||||
|
fcode? if
|
||||||
|
init-program-fcode
|
||||||
|
exit
|
||||||
|
then
|
||||||
;
|
;
|
||||||
|
|
||||||
: (encode-bootpath) ( "{params}<cr>" -- bootpath-str bootpath-len)
|
: (encode-bootpath) ( "{params}<cr>" -- bootpath-str bootpath-len)
|
||||||
|
|||||||
Reference in New Issue
Block a user