flat assembler
Message board for the users of flat assembler.

Index > IDE Development > Please Tomasz, thank you. (fasmw crash - original 1.69.14)

Author
Thread Post new topic Reply to topic
ouadji



Joined: 24 Dec 2008
Posts: 1081
Location: Belgium
ouadji
Code:
ASMEDIT.INC
-----------

combine_long_line_segments:
      add     esi,SEGMENT_HEADER_LENGTH
   mov     ecx,SEGMENT_DATA_LENGTH
;int3
    rep     movsb  ;<-------------------------- here crash !
 add     eax,SEGMENT_DATA_LENGTH
     mov     esi,[esi-SEGMENT_LENGTH] ;<--- resut : esi = 0FFFFFFFFh (second pass)
        btr     esi,0
    

UNDO + long line + fasmw original 1.69.14 (last fasmw 07 aug 2010)

a) my long line : "ab ... 250 spaces (long line) ... cdef" ("f" = char n° 250)

b)immediately after the "b",
I place the cursor and i make (make, do, put ... Confused ???) a carriage return

c) UNDO

d) first pass inside the code ... "here" ... all ok !

e) second pas .... ecx=ok , edi=ok, but esi=0000000Eh !!! (crash)

esi = 0FFFFFFFFh + "btr esi,0" = 0FFFFFFFEh
esi = 0FFFFFFFEh + 10h (SEGMENT_HEADER_LENGTH) = 0000000Eh

I repeated the test several times, it's always the same result.
At the second pass in "here" (first always ok), esi = 0000000Eh, and crash

_________________
I am not young enough to know everything (Oscar Wilde)- Image


Last edited by ouadji on 19 Aug 2010, 09:02; edited 3 times in total
Post 15 Aug 2010, 11:08
View user's profile Send private message Send e-mail Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
Same problem here.
Post 15 Aug 2010, 15:03
View user's profile Send private message Reply with quote
ouadji



Joined: 24 Dec 2008
Posts: 1081
Location: Belgium
ouadji

(thank you for having tried and confirmed this problem LocoDelAssembly)

A long line consists of several sub-lines.
if, after the cursor, there is no other characters in the current sub-line,
then ... if carriage return just after this only character of the current sub-line ..
and "undo" ... then "crash".
If there is one (just one) character after the cursor, in the current sub-line,
there is no problem. (sorry for my english)

problem
-------
|"a" x......... sub-line1 ..........|| ....."b"..... sub-line2 ..........|

in this case:
mov esi,[esi-SEGMENT_LENGTH]
resut : esi = 0FFFFFFFFh (second pass, first pass ok)

but here ... no problem
-----------------------

|"a" x......... sub-line1 .."y"....|| ....."b"..... sub-line2 ..........|


x == cursor + carriage return + UNDO


_________________
I am not young enough to know everything (Oscar Wilde)- Image
Post 15 Aug 2010, 15:37
View user's profile Send private message Send e-mail Reply with quote
ouadji



Joined: 24 Dec 2008
Posts: 1081
Location: Belgium
ouadji

Please Tomasz, is it possible to fix this annoying problem.
FASMW still comes to crash due to this problem.
Solving this problem would be a good improvement for FASMW.
I also need a stable "FASMW" to develop "WINK".

thank you very much Tomasz

_________________
I am not young enough to know everything (Oscar Wilde)- Image
Post 19 Aug 2010, 09:00
View user's profile Send private message Send e-mail Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
Moved this to compiler internals - better chance of being noticed by The One Wink
Post 19 Aug 2010, 09:06
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 7796
Location: Kraków, Poland
Tomasz Grysztar
The quick fix: add the missing line
Code:
        call    store_segment_for_undo    
at row 91 of NAVIGATE.INC (it's in the "check_line_length" procedure, just before the "mov [esi],eax" instruction).
For the official quality fix you will have to wait at least few days, because I'm not able to make the new packages right now.

vid: thanks; however I prefer to have editor bugs sticky in "IDE development". Wink
Post 19 Aug 2010, 13:50
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
Quote:
vid: thanks; however I prefer to have editor bugs sticky in "IDE development".

Okay, I just wasn't sure if you check this section too. I'll know next time.

PS: What made you think you are The One? Very Happy
Post 19 Aug 2010, 13:56
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
edemko



Joined: 18 Jul 2009
Posts: 549
edemko
[off-topic]
Quote:

better chance of being noticed by The One

It sounds "Mr.Tomasz, could you please view here, we have got a pie!"
Forum is a book-like, none is making a man reading everything.
But that man must view titles at least.
I'm not occusing Tomasz.
It's just a had ache for Vid and Loco to do that.
Might be.
A searching person will always mention things around.
You just worry to much, take it easy.
[/off-topic]
Post 19 Aug 2010, 14:06
View user's profile Send private message Reply with quote
ouadji



Joined: 24 Dec 2008
Posts: 1081
Location: Belgium
ouadji
Code:
NAVIGATE.INC
------------
.....
88      xchg    eax,[esi]
89 mov     esi,[esi+4]
90       dec     esi

 call    store_segment_for_undo   ;<---------- +

  mov     [esi],eax
   inc     [released_segments]
 sub     edx,SEGMENT_DATA_LENGTH
.....
    

Thank you very much Tomasz !
Quote:
For the official quality fix you will have to wait at least few days
no problem, it's already very good to have a "emergency solution".
We'll wait until you have time to build a better solution..
Thank you for this quick fix.
I tried it, it works fine. I'm very happy, again thank you.


PS: The One ... I like that ! it sounds good! Razz

_________________
I am not young enough to know everything (Oscar Wilde)- Image
Post 19 Aug 2010, 16:04
View user's profile Send private message Send e-mail Reply with quote
MHajduk



Joined: 30 Mar 2006
Posts: 6038
Location: Poland
MHajduk
ouadji wrote:
PS: The One ... I like that ! it sounds good! Razz
Latin title Primus inter pares ("The first among equals") sounds even better, IMO. Wink

Hehe, King Thomas and the programmers of the Round Table... Razz
Post 19 Aug 2010, 19:06
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17663
Location: In your JS exploiting you and your system
revolution
Is this bug fixed now?
Post 01 Feb 2011, 11:40
View user's profile Send private message Visit poster's website Reply with quote
ouadji



Joined: 24 Dec 2008
Posts: 1081
Location: Belgium
ouadji

I think so.
Tomasz has spoken about an "official quality fix",
but I think this fix is actually a final fix. Wink
Code:
at row 91 of NAVIGATE.INC ---> + call store_segment_for_undo    
that being said, this fix works.

_________________
I am not young enough to know everything (Oscar Wilde)- Image
Post 02 Feb 2011, 01:11
View user's profile Send private message Send e-mail Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17663
Location: In your JS exploiting you and your system
revolution
Can I unsticky it then?
Post 02 Feb 2011, 01:14
View user's profile Send private message Visit poster's website Reply with quote
ouadji



Joined: 24 Dec 2008
Posts: 1081
Location: Belgium
ouadji

It would be nice that Tomasz confirms that this fix is a final fix
... but I think he does not intend to modify it.
I say "yes". If another problem arises, we will post it again.

_________________
I am not young enough to know everything (Oscar Wilde)- Image
Post 02 Feb 2011, 01:29
View user's profile Send private message Send e-mail Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.

Website powered by rwasa.