# This file describes the register layout for an OS/ARCH # if numeric value starts with '.' it is readed as in bits instead of bytes # TODO: implement endian ?? how can we define the arch endian here? # # Format file is: (sys/user.h) #---------------- # type name size offset packedsize =PC eip =SP esp =BP ebp gpr eip .32 48 0 gpr oeax .32 44 0 gpr eax .32 24 0 gpr ebx .32 0 0 gpr ecx .32 4 0 gpr edx .32 8 0 gpr esp .32 60 0 gpr ebp .32 20 0 gpr esi .32 12 0 gpr edi .32 16 0 seg xfs .32 36 0 seg xgs .32 40 0 seg xcs .32 52 0 seg xss .32 52 0 gpr eflags .32 56 0 cpastidor0 #>cpazstidor0 carry parity above zero XX trap XX direction XX XX XX # base address is 448bit flg carry .1 .448 0 flg flag_p .1 .449 0 flg flag_a .1 .450 0 flg zero .1 .451 0 flg sign .1 .452 0 flg flag_t .1 .453 0 flg flag_i .1 .454 0 flg flag_d .1 .455 0 flg flag_o .1 .456 0 flg flag_r .1 .457 0