flat assembler
Message board for the users of flat assembler.
Index
> Compiler Internals > BUG: "error: out of memory" Win32 |
Author |
|
coconut 21 Jun 2005, 21:08
did you try to change the memory size in Options > Compiler setup menu?
|
|||
21 Jun 2005, 21:08 |
|
FlashBurn 22 Jun 2005, 04:19
Yes, and this also didn´t work and normally I´m using the commandline version of fasm!
|
|||
22 Jun 2005, 04:19 |
|
Tomasz Grysztar 22 Jun 2005, 06:18
You have to show the source that causes the problem.
|
|||
22 Jun 2005, 06:18 |
|
FlashBurn 22 Jun 2005, 20:44
I will see when I can load it up, because it is a little bit big (109KiB)!
|
|||
22 Jun 2005, 20:44 |
|
f0dder 22 Jun 2005, 21:15
flashburn, compress it?
|
|||
22 Jun 2005, 21:15 |
|
coconut 22 Jun 2005, 23:28
commandline also has -m switch to specify memory settings look in the manual
|
|||
22 Jun 2005, 23:28 |
|
FlashBurn 23 Jun 2005, 10:59
I compressed it, but I have to share my internet connection with my brother and upload is like hell The -m switch didn´t helped as I tested it with fasmw!
|
|||||||||||
23 Jun 2005, 10:59 |
|
Tomasz Grysztar 23 Jun 2005, 11:38
The problem is caused by this line in your task_t structure:
Code: .name rb (256 - .name) which, when the current offset is above 256, tries to reserve the negative amount of bytes. That was also indeed a flaw in fasm, since it was signaling the wrong error message - I've updated the 1.62 with the fix. Thanks for the report. |
|||
23 Jun 2005, 11:38 |
|
FlashBurn 23 Jun 2005, 13:46
OK, but what have I to write that I get the value "256 - offset of .name in the structure"?
|
|||
23 Jun 2005, 13:46 |
|
Tomasz Grysztar 23 Jun 2005, 13:50
In general, the offset of .name is the address of .name minus the address of the structure. You can use some additional label:
Code: struc foo { .start: .name rb 256 - (.name-.start) } But since you define also "task_t task_t" at address 0 to get the structure offset, the simplest should be just: Code: .name rb (256 - task_t.name) |
|||
23 Jun 2005, 13:50 |
|
vid 23 Jun 2005, 14:21
to the first one
Code: struc foo{ local ..start ..start: .name rb 256 - ..start } just like first privalov's, but this way you won't get defined additional label task_t.start and won't change namespace for some very special causes. |
|||
23 Jun 2005, 14:21 |
|
Tomasz Grysztar 23 Jun 2005, 14:56
Even better:
Code: struc foo { .: .name rb 256 - (.name-.) } this one doesn't use any additional label at all. |
|||
23 Jun 2005, 14:56 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.