flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
revolution 23 Aug 2011, 21:07
ouadji wrote: If the code requires "error_outside_compiler" ... |
|||
![]() |
|
ouadji 23 Aug 2011, 21:16
Quote: ..then initialise [resume_esp] and [resume_eip] before use. these two variables are not initialized, nor in the compiler, nor in the editor. |
|||
![]() |
|
revolution 23 Aug 2011, 21:30
ouadji wrote:
|
|||
![]() |
|
ouadji 23 Aug 2011, 22:22
Quote: Have you tracked down which code uses error_outside_compiler? Code: ;errors.inc ;---------- error_with_source: cmp [symbols_file],0 je assembler_error call dump_preprocessed_source call restore_preprocessed_source jmp assembler_error fasm.inc ;;------ assembler_error: cmp [hthread],0 je error_outside_compiler Quote: It is done. By the code that is "outside the compiler", namely the calculator no, it is not done, the initialization of these two variables into the code of the calculator has nothing to do with the compiler. if I use the compiler (Run/Compile), these two variables are not initialised, [resume_esp]=0 and [resume_eip]=0. |
|||
![]() |
|
ouadji 23 Aug 2011, 22:36
I understood ! The calculator uses a piece of code of the compiler. Code: proc CalculatorDialog hwnd,msg,wparam,lparam ... xor eax,eax mov [hthread],eax ;<--- ! [hthread]==0 ... call convert_expression ... call calculate_expression Code: assembler_error: cmp [hthread],0 ;<--------- ==0 from the calculator je error_outside_compiler ;!=0 from the compiler call show_display_buffer this condition is never true if the code comes from the compiler! but always true if the code comes from the calculator (It's clever, well done Tomasz!) I still missed an opportunity to keep quiet! ![]() |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.