Macro, constant or function | 32-bit meaning | 64-bit meaning |
is64 | -- | Makes it possible to use "if used is64" macro to enter specific x64 code. |
is32 | Makes it possible to use "if used is32" macro to enter specific x86 code. | -- |
StartProc | -- | Writes parameters passed through a function, called with the Windows calling convention x64, on stack. |
MakeStack | -- | Creates free space on stack and rounds stack up to 16 bytes to be able to call a function with the Windows calling convention x64. |
argpush | Pushes parameters on stack to be able to call a function with the Windows calling convention x86 | Writes a parameter to register or on stack to be able to call a function with the Windows calling convention x64. |
denter | This is a function and is used to start an internal function, it saves the following registers on stack: ESP, EDI, ESI, EBX, EDX, ECX en EBP and moves esp to ebp after one push (first parameter on stack will be on EBP+0x8). | This is an internal function and is used to start an function, it saves the following registers on stack: RSP, RDI, RSI, RBX, RDX, RCX, R12, R13, R14, R15 and RBP and moves rsp to rbp after one push (first parameter on stack will be on RBP+0x10). |
dleave | This is a function and restores the registers pushed on stack by denter. | This is a function and restores the registers pushed on stack by denter. |
lodsp, stosp, movsp, scasp and jpcxz | Will be replaced with instructions: lodsd, stosd, movsd, scasd and jecxz. | Will be replaced with instruction lodsq, stosq, movsq, scasq, jrcxz. |
peax, pecx, pebx, pedx, pedi, pesi, pesi, pebp and pesp | Will be replaced with registers: eax, ecx, ebx, edx, edi, esi, esi, ebp and esp. | Will be replaced with registers: rax, rcx, rbx, rdx, rdi, rsi, rsi, rbp and rsp. |
ClearSpaceForAPI | 0 | The size used on stack by macro MakeStack, which is 8*16 bytes. |
UsedSizeBydEnter | The size used by function denter to place the registers on stack. This is 20 bytes. | The size used by function denter to place the registers on stack. This is 72 bytes. |
FunctionReturnFactor | The size that need to be cleared from stack when returning a Windows calling convention x86 function. This is 4 bytes per parameter. | The size that need to be cleared from stack when returning a Windows calling convention x64 function. This is 0 bytes per parameter. |
psize | The size of a pointer, 4 bytes. | The size of a pointer, 8 bytes. |
pointer | The name in fasm to create a dword (4 bytes), 'dd'. | The name in fasm to create a qword (8 bytes), 'dq'. |
pdword | The name in fasm to identify a dword, 'dword'. | The name in fasm to identify a qword, 'qword'. |
Folder | Contents |
. | Contains assembly files from TV's server and it's plugin's, compiled files and an install and uninstall script. |
windows | Contains source that calls and uses Windows API. |
test protocols | Plug-ins that where build to test the functionality of TV's server. Run "register_x86.reg" or "register_x64.reg" to register these plug-ins (edit the correct path in these files before running). |
include_tvs_server_plugin_tcp_protocol | Assembly files for the TCP/IP protocol, included by the tvs_server_plugin_tcp_protocol_x**.asm file. |
include_tvs_server_plugin_http | Assembly files for the HTTP protocol, included by the tvs_server_plugin_http_x**.asm file. |
include_tvs_server_plugin_control_panel | Assembly files for Control panel protocol, included by the tvs_server_plugin_control_panel_x**.asm file. |
include_plugin_general | Assembly files included by all plug-ins. |
include_http_protocol | Assembly files included by the http protocol DLL used by the control panel and HTTP plugin-protocol. |
include | Assembly files included mostly by the base and some files are also included by some protocols. |
controlpanel | Html pages that are used by the control panel plugin to build the user interface. |