This commit is contained in:
2018-03-24 20:35:01 +03:00
parent afafa5af7f
commit 8d90c00de0
3 changed files with 21 additions and 21 deletions

View File

@@ -1,9 +1,9 @@
#Description of functions inside FASM.DLL
# Description of functions inside FASM.DLL
###fasm_GetVersion()
### fasm_GetVersion()
Returns double word containg major version in lower 16 bits, and minor version in the higher 16 bits.
###fasm_Assemble(lpSource,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
### fasm_Assemble(lpSource,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
Assembles the given source, using the provided memory block as a free storage space(which is also to contain generated output).
The lpSource should contain a pointer to zero-ended source text(pansichar).
@@ -18,11 +18,11 @@ If the assembly is successful, function returns FASM_OK value and fills the outp
If the assembly failed, function returns one of the other general conditions/errors codes(see "General errors and conditions" in Fasm4Delphi.pas). If if error code is FASM_ERROR, it means that an error caused by a specific place in source occured, then the error_code and error_line fields of FASM_STATE are filled, first one with detailed error code(see "Error codes for FASM_ERROR condition" in Fasm4Delphi.pas), and the second one with pointer to a structure containing data about line that caused the error(see "TLINE_HEADER" in Fasm4Delphi.pas).
###fasm_AssembleFile(lpSourceFile,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
### fasm_AssembleFile(lpSourceFile,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
This function performs identically to fasm_Assemble, except that it takes the lpSourceFile parameter in place of lpSource, and it shall contain the pointer to zero-ended path to file containing the source to assemble(pansichar).
********************************************
#Description of structures used in FASM.DLL
# Description of structures used in FASM.DLL
The following structure resides at the beginning of memory block provided to the fasm_Assemble function. The condition field contains the same value as the one returned by function.

View File

@@ -1,9 +1,9 @@
#FASM.DLLから関数の説明です。
# FASM.DLLから関数の説明です。
###fasm_GetVersion()
### fasm_GetVersion()
Dwordを返します。16ビット下位は重要なバージョン番号含みます。16ビット上位はサブバージョン番号含みます。
###fasm_Assemble(lpSource,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
### fasm_Assemble(lpSource,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
ソースをアセンブルします。ワークスペースいるにメモリブロックが渡できるをつかいます(そのメモリブロックのまん中に出力があります)。
lpSourceはソースへポインタですpansichar。終わりの文字の値はゼロです。
@@ -18,11 +18,11 @@ hDisplayPipeにpipeのhandleがあります。pipeは表示の出力。hDisplayP
アセンブルは成功しないが関数がエラーコードを返しますFasm4Delphi.pasへ「General errors and conditions」を見る。FASM_ERRORはコードへエラーを意味する。それからFASM_STATEのerror_codeとerror_lineがあります。error_codeは二番エラーコードFasm4Delphi.pasへ「Error codes for FASM_ERROR condition」を見る。error_lineはエラーの文字列のレコードへポインタFasm4Delphi.pasへ「TLINE_HEADER」を見る
###fasm_AssembleFile(lpSourceFile,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
### fasm_AssembleFile(lpSourceFile,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
この関数は同じにfasm_Assembleです。でも、一番パラメータはlpSourceFileあります。lpSourceFileはソースファイルの名前へポインタですpansichar。終わりの文字の値はゼロです。
********************************************
#FASM.DLLからエラーコードの説明です。
# FASM.DLLからエラーコードの説明です。
fasm_Assembleのためにメモリブロックの初めてにこのエラーコードがあります。conditionは同じ関数の返です。
@@ -34,9 +34,9 @@ fasm_Assembleのためにメモリブロックの初めてにこのエラーコ
file_path:PAnsiChar;
line_number:cardinal;
case byte of
0:(file_offset:cardinal);
1:(macro_calling_line:^TLINE_HEADER;
macro_line:^TLINE_HEADER;);
0:(file_offset:cardinal);
1:(macro_calling_line:^TLINE_HEADER;
macro_line:^TLINE_HEADER;);
end;
このレコードは二つのバリエーション。一番バリアントはTLINE_HEADERがソースに文字列をあります。二番バリアントはTLINE_HEADERがマクロ命令の文字列をあります。一番バリアントはline_numberのビット上位にです。二番バリアントはline_numberのビット上位にです。
@@ -49,7 +49,7 @@ fasm_Assembleのためにメモリブロックの初めてにこのエラーコ
file_path:PAnsiChar;
line_number:cardinal;
case byte of
0:(file_offset:cardinal);
1:(macro_calling_line:^TLINE_HEADER;
macro_line:^TLINE_HEADER;);
0:(file_offset:cardinal);
1:(macro_calling_line:^TLINE_HEADER;
macro_line:^TLINE_HEADER;);
end;

View File

@@ -1,9 +1,9 @@
#Описание функций FASM.DLL
# Описание функций FASM.DLL
###fasm_GetVersion()
### fasm_GetVersion()
Возвращает двойное слово(dword) содержащее основную чать версии в младших 16 битах, и подверсию в сташих 16 битах.
###fasm_Assemble(lpSource,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
### fasm_Assemble(lpSource,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
Ассемблирует переданный исходный код, используя переданный блок памяти как рабочее пространство(вывод также будет находиться в нём).
lpSource должен содержать указатель на оканчивающийся нулём(zero-ended?ansi string) исходный код(pansichar).
@@ -18,11 +18,11 @@ hDisplayPipe должен содержать handle pipe'а, в котрорый
Если ассемблирование неудалось, функция вернёт один из других основных кодов ошибок(см. "General errors and conditions" в Fasm4Delphi.pas). Если код ошибки - FASM_ERROR, это значит что ошибка произошла в определённом месте кода, тогда поля error_code and error_line FASM_STATE'а будут заполнены, первое из них будет содержать детальный код ошибки(см. "Error codes for FASM_ERROR condition" в Fasm4Delphi.pas),а вторая - указатель(pointer) на структуру содержащую информацию о строке в котрой произошла ошибка(см. "TLINE_HEADER" в Fasm4Delphi.pas).
###fasm_AssembleFile(lpSourceFile,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
### fasm_AssembleFile(lpSourceFile,lpMemory,cbMemorySize,nPassesLimit,hDisplayPipe)
Эта функция работает идентично fasm_Assemble, но в отличии от неё принимает параметр lpSourceFile вместо lpSource. Этот параметр должен содержать указатель(pointer) на оканчивающийся нулём(zero-ended?ansi string) путь до файла содержащего исходный код для ассемблироания(pansichar).
********************************************
#Описание структур используемых FASM.DLL
# Описание структур используемых FASM.DLL
Следующая структура находится в начале блока памяти передаваемого в fasm_Assemble. Поле condition содержит тоже значение которое возвращается функцией.
Когда функция возвращает FASM_OK, поля output_length и output_data заполнены указателем(pointer) на результат ассемблирования(он находится внутри блока памяти) и длинной этого блока памяти соответственно.