mirror of
https://github.com/FDOS/kernel.git
synced 2025-07-28 16:24:08 +02:00
boot: display new magic offset in hexadecimal
This commit is contained in:
parent
4d30378bb6
commit
eb75bea6c1
@ -88,6 +88,50 @@
|
|||||||
%error Must select one FS
|
%error Must select one FS
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%macro _appenddigitstrdef 2.nolist
|
||||||
|
%substr %%ii "0123456789ABCDEF" (%2) + 1
|
||||||
|
%strcat _%1 _%1,%%ii
|
||||||
|
%endmacro
|
||||||
|
|
||||||
|
; %1 = name of single-line macro to set. will be prefixed by underscore
|
||||||
|
; %2 = number to write
|
||||||
|
; %3 = minimal number of hexits, 0..8. defaults to 1
|
||||||
|
; (setting it to 0 with a number of 0 defines macro to "")
|
||||||
|
%macro _autohexitsstrdef 2-3.nolist 1
|
||||||
|
%if %3 > 8
|
||||||
|
%error Minimal number of hexits 9 or more: %3
|
||||||
|
%endif
|
||||||
|
%define _%1 ""
|
||||||
|
%if (%2) >= 1_0000_0000h
|
||||||
|
%error Number has to use 9 or more hexits: %2
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 1000_0000h || %3 >= 8
|
||||||
|
_appenddigitstrdef %1, (%2 >> (7 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 100_0000h || %3 >= 7
|
||||||
|
_appenddigitstrdef %1, (%2 >> (6 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 10_0000h || %3 >= 6
|
||||||
|
_appenddigitstrdef %1, (%2 >> (5 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 1_0000h || %3 >= 5
|
||||||
|
_appenddigitstrdef %1, (%2 >> (4 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 1000h || %3 >= 4
|
||||||
|
_appenddigitstrdef %1, (%2 >> (3 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 100h || %3 >= 3
|
||||||
|
_appenddigitstrdef %1, (%2 >> (2 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 10h || %3 >= 2
|
||||||
|
_appenddigitstrdef %1, (%2 >> (1 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%if (%2) >= 1h || %3 >= 1
|
||||||
|
_appenddigitstrdef %1, (%2 >> (0 * 4)) & 0Fh
|
||||||
|
%endif
|
||||||
|
%endmacro
|
||||||
|
|
||||||
; NOTE: sys must be updated if magic offsets change
|
; NOTE: sys must be updated if magic offsets change
|
||||||
%macro magicoffset 3.nolist
|
%macro magicoffset 3.nolist
|
||||||
%ifdef ISFAT12
|
%ifdef ISFAT12
|
||||||
@ -102,6 +146,9 @@
|
|||||||
%endif
|
%endif
|
||||||
%assign NEWOFFSET $ - Entry
|
%assign NEWOFFSET $ - Entry
|
||||||
%if NEWOFFSET != SYSOFFSET
|
%if NEWOFFSET != SYSOFFSET
|
||||||
|
_autohexitsstrdef NEWOFFSETHEX, NEWOFFSET
|
||||||
|
%strcat _NEWOFFSETHEX _NEWOFFSETHEX,'h'
|
||||||
|
%deftok NEWOFFSET _NEWOFFSETHEX
|
||||||
%error Magic offset %1 changed for FATFS, old=SYSOFFSET, new=NEWOFFSET
|
%error Magic offset %1 changed for FATFS, old=SYSOFFSET, new=NEWOFFSET
|
||||||
%endif
|
%endif
|
||||||
%endmacro
|
%endmacro
|
||||||
|
Loading…
x
Reference in New Issue
Block a user