From b5f8ed9456830af6291b631238499dd43353ec01 Mon Sep 17 00:00:00 2001 From: german Date: Mon, 23 Feb 2026 11:14:18 +0400 Subject: [PATCH] Fix Little-Big endian BAG --- ntsys | Bin 16264 -> 16304 bytes ntsys.h | 29 +++++++++++++++++++++-------- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/ntsys b/ntsys index 16a9426bf26c51512537ed99b6eff45186a239f1..73d2a05eeb4bf5cb9a00803b4fa404c77121363d 100755 GIT binary patch delta 2224 zcmZ`)drVVT7(eIs4G8yASX-y|Aq)tiw=H0K*a1G`oikA~NsMehHiod6*}0M!v!pfX z0ztOImpPWjq??I@_z#3Rommv8Sv1oajal%IOe6$vZ0B73KK>Lc#Hws3Qr6U*kp9l6N)c^zB8yLOr7uS z-t!@drbL{>RSe3{h?)sCW;3D0NVXtql^`)!w~Zj5>fJGH=3vjeV}^GdT#>I~Kg_Sm|NYJS#7 z16)P+tT}Jd>3LogJTp67Y@RNc=0&YgWpPm3WUHmuI?VeldqqOz(il|m?e;Dc&d3bQ zvfP>cyI|SBa_KfW#aFG8OCR|O=`3)sAw=~*SYZFQ!2ab0J7a+deC7IM=zQAgFL0~H zkp?4|(IX9-eq>OejTK7+rjMC^Xewrt?-aNb>=Tw%w4sai zRJKXIkq}d*{`;{!X&|x!jr8}=WjWn}&-0V13eE|oEpJGJwOMSS)cdEWLmDuamMc@% zlsJP^>7S8}sS6H{q4NxDj5PRB2`}}Zm-;W9W#=y41>VByxY*g7wf2NN58dbqN&UCe zH8?RiB@JvYadt?RMarT*xTA}ncHDe3Dfn)4iKX|Ct!!HCvNTwHf^A{2b~C~`cJeVf zk87M}IUb%uLb*z)o=2E@Cd&_hO;10QZL(g%Vf!)jKY6&Xr!Z!Bmvu1p+AQ*pD!sym z+R%lWLI`@MM=)bAfB8NxhjE`8pTQ%h$4^X#ik|1fR?mvbPdvwI#Pdj&6S%P?;wWMY zaSD;l$Z`$tm`Chl_G4L|X81&wXAyWr9zO7uEoC!aVUaZ!RXhCbarRA*o$8?R`d)Fywa&S?xCJ+o^-|{*5#Zg6O7KASmwQ zQW2QoUV?G4oF?G9I76G^e8Ay~YRT2qgfybU;S-L-lYofny+Oy^Ms-dS6-tURb!$+h z5*)z)6igs@=Zz)VCGVcbP=;z=Kg#}Wm29@ffD#1j^0g2F3I2p3LVpxSjP9Sxx zLGxrkW4S)VC{J93G|vm6`Ze6e=mbUu&PA*XqGv&Ri24x1pulvGbl5 z<+Z5NLnMBw`?WeLrwsj1(a)2`gkO+rM$e-0@!hQoT(5Re7yEZrV(-{K7tRd>t#O!I zG3vu!+3D`dV9h>SsC-r4ZCu?8H!1Z%cfBZNjcOtt zZ-QX7!w>aKge&Z=i=v|wGWDV@t$EYnZ3x@yv;$NJI~&4t$4Ng{Nf>L0TcheS1g9elPSEn(r=qPCGgeCu&~LePS$Z2 zGAl)!{#i?cHxdSCBmjL89=6~ZjRfW{K@z_$Orns9$XJKWt6|#?cJWd6LPb-U-hiD= GW&Z(zIP^0B delta 2067 zcmZ`)eQZ-z6u-A$>l9&(-|G~^iWWvZxV4}@XV3BCGm$4lH#f>t zo2O2nofz5#`;DH$Y>cT-j*uQTLpF>XgLEJCm;`W{sv&H0(1U0_Lz60(Hg!VC{8p40 zaHtV~CPXu$VkwOx(~QU#Pr8aaIf9B7#uapS<`C3$Fgr3|@f*o@W`8>L9u~_$_Moja zy;@eyBv*K)lTXM9E0FFOgjX#s)B;~x1RqA6Y12Wit89U?V!a(@yt0KxD9#dKLDt-y z)B~&;)?^7qY>U-lS03ei5@~3U#-*VZ! zN9^23Yzw?^uQJ>!2Mb@h>VlV$d+lDEvro+@4Fql>BMq2;R$$3=SE1Bz{#fbnO?7c{ z+UATY!V3&he^S-gABQ*j1vCN)eqlufDH5rCUg`}zr*x(GFI{t`{=f@pWXA8ya;8<5 z<*&_a;3vK;Aoc#{kp}7ua|vmc`b}jXb;Qb2hcA`6gksEW>${5NDW&pK{Jb=Z~tBCFMwWV3TzrLiT=sF+`6n={VFwW}P_*I$Azp{Kn znb7SdDqNbPa#oS~1_if&%p64+&i}|#g09R>IGpb+e`hXs&;5h$1L_{)_$X4Cp$0); z!FO;c-}Bg4I2`?}HUFJCv;O{MO~L&+o~JvvwC(8J)z;uDYjthf+10iqo2+SjZR;C5 zA7;VpTAU2K4${E%lq|<^;_H5w#L2s|d=D{$XoV(s zIb8?a-GX@=#@Pr1?nQJIj=6=V5wt_7)0+c3`|+8?crK+@2anigZKV>*ObuV~R~r?0}QrXXzMlqLUth3b6whG$aOLQp`{noUay& zLM*E`j*v#|7;q7T@JF?Xc}sl4%nWtSAa*DzBnfEti8Ks7_>YA`rGCNc%4@39fyx`c zAnk*a8h>G$WmF4?ehCYh2geNg5UVMM&ua3`9Xdnbh8s14`CYVKih_Ose63LQ3EDi# zLsH9Q(twBXi?*ShWAr`2HZ2>!{e=kNL9`JLspV#q# if973G;N7gWF!0M{Ts$B2b5fngZGh&WpB{pEu>3#ca^vR! diff --git a/ntsys.h b/ntsys.h index 247e4ff..6e76e9b 100644 --- a/ntsys.h +++ b/ntsys.h @@ -26,6 +26,10 @@ #define NTSYS_VERSION "1.0" +#define NAME_OF_32_BITS_TYPE unsigned int +#define NAME_OF_64_BITS_TYPE unsigned long int +#define NAME_OF_16_BITS_TYPE unsigned short int + #include #include #include @@ -61,6 +65,10 @@ static void __help(void) { ); } +static int __exe_run(__e_byte_t* memory, unsigned int memorysize, unsigned long filesize, FILE* fp) { + return EXIT_SUCCESS; +} + int ntsys_api_call(char* filename) { /* File data */ @@ -105,14 +113,19 @@ int ntsys_api_call(char* filename) { ntsys_error("Header read error or digital signature is invalid!"); return EXIT_FAILURE; } - - /* - * printf("Filesize: %d bytes\n", *((unsigned short int*)head.e_filesize)); - * printf("Memorysize: %d bytes\n", *((unsigned short int*)head.e_memorysize)); - */ - - - return EXIT_SUCCESS; + unsigned long int filesize = 0; + switch (4) { + case sizeof(NAME_OF_64_BITS_TYPE): filesize = *((NAME_OF_64_BITS_TYPE*)head.e_filesize); break; + case sizeof(NAME_OF_32_BITS_TYPE): filesize = *((NAME_OF_32_BITS_TYPE*)head.e_filesize); break; + default: + ntsys_error("Unknown data type! You must recompile the program and specify a different type."); + return EXIT_FAILURE; + } + __e_byte_t* memory = malloc(*((NAME_OF_16_BITS_TYPE*)head.e_memorysize)); + int stat = __exe_run(memory, (unsigned int)*((NAME_OF_16_BITS_TYPE*)head.e_memorysize), filesize, fp); + fclose(fp); + free(memory); + return stat; } int ntsys_compile_asm(char* in_file, char* out_file) {