flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
revolution 19 Jun 2018, 16:26
You have to ask to OS to forward exceptions to your code. So the code will be OS dependant.
|
|||
![]() |
|
Mino 20 Jun 2018, 09:33
I'm afraid I don't quite understand what you mean by that.
Also, here's a little test I did in C++ to see how this language handled exceptions, and unless I'm wrong, there's no[real] OS dependency, here's : ![]() _________________ The best way to predict the future is to invent it. |
|||
![]() |
|
revolution 20 Jun 2018, 09:48
All those calls to external functions are the C-library OS interface routines.
You won't be able to get any exceptions unless you ask the OS to pass them to your code. All exceptions trap into the kernel. This is done by the CPU and there is no way to alter that from user code. So you have to know which OS you are using and from there how to interface with the OS to get the exceptions. |
|||
![]() |
|
Mino 20 Jun 2018, 10:18
Ha, okay, thanks, I understand better. So I'll see what I can do.
Thank you ![]() |
|||
![]() |
|
Furs 20 Jun 2018, 15:23
At your skill level, you should definitely not bother with exceptions. They're really horrendous and a pain to handle, especially on x64 Windows, but even the 32-bit SEH is somewhat of a pain in the arse.
I don't know about other OSes. |
|||
![]() |
|
JohnFound 20 Jun 2018, 15:42
Especially for Windows, you can see the seh.fpr example from Fresh IDE package. The FreshLib library contains macros that make the usage of SEH pretty easy. The definitions of the macros are in the file: freshlib/macro/Win32/_exceptions.inc. You can see that the code behind is not so complex.
![]() |
|||
![]() |
|
Mino 20 Jun 2018, 15:54
That's exactly what I was thinking :p . Exceptions, especially at my level, isn't easy.
|
|||
![]() |
|
DimonSoft 20 Jun 2018, 16:13
They’re difficult at all levels. Exceptions are not only about handling. They’re about proper design and about having your data structures ready for an exception to occur literally in every line of your code.
|
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.