about summary refs log tree commit diff stats
path: root/src/include
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-09-01 13:07:47 +0200
committerptitSeb <sebastien.chev@gmail.com>2024-09-01 13:07:47 +0200
commit9178effd9f837b52107c1943e9736cf2dfc5d40d (patch)
tree10794e2361183a359ab92d31c081a31e299c125c /src/include
parentcce9e280ce2ab54eeba48729c51a88e2d2c5e770 (diff)
downloadbox64-9178effd9f837b52107c1943e9736cf2dfc5d40d.tar.gz
box64-9178effd9f837b52107c1943e9736cf2dfc5d40d.zip
[BOX32] More wrapped function and a few fixes for steamclient.so (still crashing)
Diffstat (limited to 'src/include')
-rw-r--r--src/include/box32.h2
-rwxr-xr-xsrc/include/myalign32.h31
2 files changed, 28 insertions, 5 deletions
diff --git a/src/include/box32.h b/src/include/box32.h
index 9d5a40ca..9d14b0f7 100644
--- a/src/include/box32.h
+++ b/src/include/box32.h
@@ -58,7 +58,7 @@ static inline long_t to_long(long l) {
 }
 static inline ulong_t to_ulong(unsigned long l) {
     if(l!=0xffffffffffffffffLL && (l>>32))
-        printf_log(LOG_NONE, "Warning, long 0x%p is not a 32bits value\n", (void*)l);
+        printf_log(LOG_NONE, "Warning, ulong 0x%p is not a 32bits value\n", (void*)l);
     return (ulong_t)l;
 }
 #else //TEST32
diff --git a/src/include/myalign32.h b/src/include/myalign32.h
index c60cf30a..e1104ad0 100755
--- a/src/include/myalign32.h
+++ b/src/include/myalign32.h
@@ -95,10 +95,10 @@ void AlignVorbisDspState(void* dest, void* source);   // x86 -> Arm
 
 void UnalignVorbisBlock(void* dest, void* source); // Arm -> x86
 void AlignVorbisBlock(void* dest, void* source);   // x86 -> Arm
-
-void UnalignEpollEvent(void* dest, void* source, int nbr); // Arm -> x86
-void AlignEpollEvent(void* dest, void* source, int nbr); // x86 -> Arm
-
+#endif
+void UnalignEpollEvent32(void* dest, void* source, int nbr); // Arm -> x86
+void AlignEpollEvent32(void* dest, void* source, int nbr); // x86 -> Arm
+#if 0
 void UnalignSmpegInfo(void* dest, void* source); // Arm -> x86
 void AlignSmpegInfo(void* dest, void* source);   // x86 -> Arm
 #endif
@@ -478,4 +478,27 @@ struct i386_hostent {
     ptr_t  h_addr_list;// char **
 } __attribute__((packed));
 
+struct i386_iovec
+{
+  ptr_t     iov_base; // void *
+  uint32_t  iov_len;
+};
+
+struct i386_msghdr
+{
+  ptr_t     msg_name;		// void *
+  uint32_t  msg_namelen;
+  ptr_t     msg_iov;	// struct i386_iovec *
+  uint32_t  msg_iovlen;
+  ptr_t     msg_control;  // void *
+  ulong_t   msg_controllen;
+  int msg_flags;
+};
+void AlignIOV_32(void* dest, void* source);   // x86 -> Native
+void UnalignIOV_32(void* dest, void* source); // Native -> x86
+
+void AlignMsgHdr_32(void* dest, void* dest_iov, void* source);   // x86 -> Native
+//void UnalignMsgHdr_32(void* dest, void* source, void* source_iov); // Native -> x86
+
+
 #endif//__MY_ALIGN32__H_
\ No newline at end of file