VISION 4.1a is out!

All about the serious stuff.

Moderators: Mug UK, Zorro 2, Moderator Team

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Fri Sep 21, 2018 5:12 pm

HI,

@Helmut: no wind_update does not return 0 when menu is open.

So no easy patch...

ThorstenOtto
Captain Atari
Captain Atari
Posts: 400
Joined: Sun Aug 03, 2014 5:54 pm

Re: VISION 4.1a is out!

Postby ThorstenOtto » Fri Sep 21, 2018 5:33 pm

helmut wrote:Maybe a call of wind_update(BEG_UPDATE) before displaying a bubble fails (returns 0) if the menu is open.


Such a call should only return at all if no other process has the lock. You have to combine it with 0x100 (BEG_MCHECK/NO_BLOCK) if you only want to check it without being blocked, but that is only available in multitasking-AES.

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Fri Sep 21, 2018 5:50 pm

I just checked this version of Vision on my FireBee and it works! :)
But there is at least one anoying bug. I cant open the picture the normal way using load option. It loops in loading dialogue (which also has draw issue I think) and I have to abort loading by pressing ESC key.
I can open the picture with drag and drop.

And ... is there any possibility to be compiled for Coldfire CPU?

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Fri Sep 21, 2018 9:26 pm

Hi vido,

I don't know what could be wrong here; did you try another file selector? There is a known bug using myAES about the progress window not being properly displayed/managed.
You can try this intermediate version to check: vision.atari.org/download/temp/vision.zip

For ColdFire CPU, I'm afraid not as I'm using PureC.

Have fun,
Jean

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Sat Sep 22, 2018 7:22 am

JeanMars wrote:I don't know what could be wrong here; did you try another file selector? There is a known bug using myAES about the progress window not being properly displayed/managed.
You can try this intermediate version to check: vision.atari.org/download/temp/vision.zip

For ColdFire CPU, I'm afraid not as I'm using PureC.

Hi Jean,

yes I am using MyAES. So this is the reason why progress window is not properly displayed. But this is not a problem as it doesnt afect the functionality. And I dont use any other file selectors as the default one which comes with the AES I use. It would be great to solve this bug as Vision is the only one I know with this issue.

If you use PureC, maybe you could try to compile your sources with the AHCC? It says It is PureC compatible and can compile also for the Coldfire.
Maybe you could try just some LDG module or filter for beginning? Then I can test it on the FireBee for you?

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sat Sep 22, 2018 8:11 am

Hi vido,

Could you please elaborate a bit on this file selector bug? Screenshots or video may help. Do you confirm.progress window bug with myaes is gone also with intermediate release?

I'll give myaes a try to see if it can compile vision and ldv.

Thanks,
Jean

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Sat Sep 22, 2018 9:14 am

Hi Jean,

I just tried intermediate release. And ... you did it! Progress window bug is gone! It displays nicely :)
And you guess what ... file selector bug is also gone! :)
I dont know what you did but now I can open picture normaly with "Open" option :)

As far as I am concerned for now Vision is functional on the FireBee. I didnt test much other options for now but I will. The only thing is now that it is slow as I believe quite some instructions have to be emulated. I believe the difference could be seen fast in some filter or ldv module if you will try to recompile it for the Coldfire.

As everything works I think there is no need to make video for now. Or you would like to see it how it was with the previous version?

Thank you!
Vido

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sat Sep 22, 2018 10:28 am

HI vido,

thanks for the good news :-)
I believe these bugs come from a wrongly double call to rsrc_obfix for VISION version <= 4.1a, which is now fixed.
No need to get screenshot nor video then.

There is a possibility I move to AHCC in the future but I have other things in current backlog, I gave a quick try but looks like I will need some time to compile using AHCC...

Let's keep in touch, as soon as I can move to AHCC, I'll ask you to do some test for ColdFire.

Thanks,
Jean

ThorstenOtto
Captain Atari
Captain Atari
Posts: 400
Joined: Sun Aug 03, 2014 5:54 pm

Re: VISION 4.1a is out!

Postby ThorstenOtto » Sat Sep 22, 2018 10:33 am

JeanMars wrote:So no easy patch...


Just grabbed the source and tried it out. In bulle_aide(), i added a call to wind_update(BEG_UPDATE) before the v_hide_c() call, and corresponding wind_update(END_UPDATE) after v_show_c(). For SingleTOS, this fixed the problem. For MyAES, it is only fixed partially. It works as long as the mouse stays inside the dropdown menu, but when you move it out, the menu is still visible and if you hit an icon, the bubble-text still overwrites the menu. But it is still much better than before.

So i don't know where you added the calls, but doing it this way blocks the app, just as expected.

PS.:i had some problems compiling the source at first, because there are several files where there is a c-file with the same name as an assembler source, resulting in the same object file name being generated.

PPS.: the calls could eventually be moved to GeneralTimerHandler, around the call to bulle_aide(). That way, you could recheck the elapsed time when wind_update() returns, and don't display the bubble if that took too long because it was blocked by a menu.

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sat Sep 22, 2018 11:20 am

Hi Throten,

thanks for trying this out :-)
Actually it behaves a bit different on my side as I don't even have this issue with myAES but only on XaAES (the one I'm using usually). And wind_update calls don't change a thing.
On single TOS (hatari), it behaves like you.
For safety, I will add these wind_update calls even if the fix is not complete.

PS: yes agree that's not so nice to have same .O for .C and .S, I did that a long time ago and it worked because I set a different output folder for assembly files in PureC configuration.
BTW I have more and more problems making a full build with PureC (crashes, un-expected random compile errors, ..) I should move to AHCC.

Thanks,
Jean

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Sat Sep 22, 2018 11:42 am

JeanMars wrote:There is a possibility I move to AHCC in the future but I have other things in current backlog, I gave a quick try but looks like I will need some time to compile using AHCC...

Let's keep in touch, as soon as I can move to AHCC, I'll ask you to do some test for ColdFire.

That would be really great as FireBee needs good paint software. :)
The good thing is that I believe Henk is ready to help if you will find any bug etc. in AHCC. :)

I will be glad to test or help you with Coldfire version!

Vido

ThorstenOtto
Captain Atari
Captain Atari
Posts: 400
Joined: Sun Aug 03, 2014 5:54 pm

Re: VISION 4.1a is out!

Postby ThorstenOtto » Sat Sep 22, 2018 12:29 pm

JeanMars wrote:And wind_update calls don't change a thing.


It's a bit difficult to explain. It works when you enter the menu, then move the mouse down while it is still inside the box. If the mouse then hits an icon from a window under it, no bubble appears now. It still pops up as soon as you move the mouse out of the box, and hit an icon there. But that might be as well a bug in XaAES, it should still block the call as long as a menu is displayed.

I set a different output folder for assembly files in PureC configuration.


I already assumed that ;)

BTW I have more and more problems making a full build with PureC (crashes, un-expected random compile errors, ..)


Other than the above mentioned problems, i did not have to change too much (removed xaes.h etc. because i use a gem library where all those things are declared already). Pure-C sometimes has problems with too long filenames and/or pathnames, you should keep the absolute pathnames as short as possible. And the project database sometimes seems to be messed up when you are compiling files that don't have CR/LF endings, when that happens doing a "make all" usually fixes it.

I should move to AHCC.


I would not recommend that. It's still quite buggy, and has no support for softfloat IIRC. Using gcc might be a better choice for coldfire. But for that there will be some changes needed, you have to use "short" instead of int in a lot of places.

BTW you should think about not using disabled separator lines in the menu that also contain text. It's against all style guidelines i know of, and does not work in XaAES (no text is displayed there).

helmut
Captain Atari
Captain Atari
Posts: 174
Joined: Thu Jan 07, 2010 4:30 pm

Re: VISION 4.1a is out!

Postby helmut » Sat Sep 22, 2018 3:01 pm

JeanMars wrote:Actually it behaves a bit different on my side as I don't even have this issue with myAES but only on XaAES (the one I'm using usually). And wind_update calls don't change a thing.


If wind_update would always block when a menu is open, no clean redraws of other windows would be possible in this case (?)

On XaAES the menus are windows (should be always on top). If your bubbles are in windows: Do you call wind_get(FIRST/NEXTWXYH) before displaying them?

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sat Sep 22, 2018 3:30 pm

Hi Helmut,

they are not windows but forms, they come from a very old design.

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sat Sep 22, 2018 8:26 pm

Hi Thorsten,

the problem I have here with compilers:
- PureC is nice, has a great debugger but only generates 680x0 code and becomes tricky to get VISION full build (filenames are not so long basically h:\PURE_C\PROJECTS\VISION)
- AHCC has high compatibility with PureC (I believe I could still use PureD), can generate 680x0 and ColdFire code but looks a bit buggy as you mentioned
- gcc would be the best choice as a long-live ColdFire/680x0 compiler but would lead to tons of rework (e.g. int-->short), and I would lose such a great debugger

So still wondering...
Cheers,
Jean

PS: still in the process to support PNG files, looks OK, I just have a crash on a certain PNG file because of setjmp 'C' function for error handling, basically for loading an image I call an identify routine and then a loading one. So I set setjmp for error handling on identify (and it works OK on incorrect images) for when calling setjmp as pnglib doc states for load routine, this one outputs a warning (libpng warning: Application jmp_buf size changed) and crashes if the error section is called later.
I don't see a good reason when second call outputs this warning (unless a memory corruption but would be weird), just to know if you already saw that.

ThorstenOtto
Captain Atari
Captain Atari
Posts: 400
Joined: Sun Aug 03, 2014 5:54 pm

Re: VISION 4.1a is out!

Postby ThorstenOtto » Sun Sep 23, 2018 12:06 am

JeanMars wrote:- AHCC has high compatibility with PureC


High, but not perfect. And in such a large project there is nothing worse than trying to hunt down bugs that are not caused by your code, but by the compiler.

I believe I could still use PureD)


Unfortunately not really. AHCC generates the same object file format for linking, but not the source level debug informations that PD needs. You could use it maybe to debug on assembly level, but not for c sources.

gcc would lead to tons of rework (e.g. int-->short)


Yes, that would surely be a lot of work. Another one are the assembly sources.

PS: still in the process to support PNG files, looks OK, I just have a crash on a certain PNG file because of setjmp 'C' function for error handling, basically for loading an image I call an identify routine and then a loading one.


You have to call setjmp in both functions, otherwise an error from the loading function will jump back to the identify function, which has already returned.
The code in contrib/gregbook/writepng.c in the libpng archive should give you an example of how you should handle that.

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sun Sep 23, 2018 8:04 am

Hi,

yep about assembly source:
- PureC passes parameters in registers, so all assembly files in VISION have this logic; would be a high risk nightmare to move to stack parameters,
- not sure mnemonics, syntax, macros are the same with PureA/gcc

And thinking about this, I'm not sure it makes sense for ColdFire:
VISION has 68000/68020 optimized routines for LZW decoding, bitplan manipulation, scaling, etc., these one will remain pure 680x0 code so no ColFire optimization on them.

So vido, I don't think compiling for ColdFire will make a difference in your case :-(

Cheers,
Jean

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Sun Sep 23, 2018 9:51 am

JeanMars wrote:yep about assembly source:
- PureC passes parameters in registers, so all assembly files in VISION have this logic; would be a high risk nightmare to move to stack parameters,
- not sure mnemonics, syntax, macros are the same with PureA/gcc

And thinking about this, I'm not sure it makes sense for ColdFire:
VISION has 68000/68020 optimized routines for LZW decoding, bitplan manipulation, scaling, etc., these one will remain pure 680x0 code so no ColFire optimization on them.

So vido, I don't think compiling for ColdFire will make a difference in your case :-(

Oh :(
That is a shame :(
Compared to Zview opening the picture. Z viev opens the picture in 1,5 second, Vision opens it in 20 seconds.
Some larger pictures Vision opens several minutes compared to Zview which opens in 10 to 20 seconds.

That makes Vision functionality as catalogue, ... quite unusable on "fast" Atari computer :(

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sun Sep 23, 2018 9:53 am

HI Thorsten,

thanks for the hint, using a local jmp_buf instead of the one provided by pnglib (png_jmpbuf macro) solves the issue.

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sun Sep 23, 2018 10:08 am

Hi vido,

yeah, native execution power....
Is there a JPEG decoder on ColdFire (like on Falcon)? in this case JPEG images would decode as fast as zview as VISION makes use of JPEGD.

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Sun Sep 23, 2018 10:19 am

JeanMars wrote:yeah, native execution power....
Is there a JPEG decoder on ColdFire (like on Falcon)? in this case JPEG images would decode as fast as zview as VISION makes use of JPEGD.

Yes, Zview uses LDG modules whic are compiled for Coldfire CPU. Vision can use LDG modules?
Zview itself is alco Colfire compiled.

Good thing is also if software is Coldfire compiled it can be run without Coldfire emulation under EmuTOS.
That makes FireBee very fast computer :)

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sun Sep 23, 2018 10:28 am

VISION uses LDG but for image modifications, not loading/saving.
My question was more about if there is a JPEGD decoder for ColdFire (like on Falcon which uses DSP and Aranym which uses native JPEG code then).
If so, at least JPEG image can benefit of ColdFire code with VISION.

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Sun Sep 23, 2018 11:38 am

JeanMars wrote:VISION uses LDG but for image modifications, not loading/saving.
My question was more about if there is a JPEGD decoder for ColdFire (like on Falcon which uses DSP and Aranym which uses native JPEG code then).
If so, at least JPEG image can benefit of ColdFire code with VISION.

You lost me here. I tought LDG module loads and decodes JPEG image?

JeanMars
Atari freak
Atari freak
Posts: 53
Joined: Fri Apr 09, 2010 5:15 pm
Location: France
Contact:

Re: VISION 4.1a is out!

Postby JeanMars » Sun Sep 23, 2018 12:53 pm

HI vido,

depends which application...
zview relies on LDG to load images
VISION has its own internal routines; for JPEG, it looks for JPEGD, if so it uses it else it fallback to pure 68000 code.
VISION could use LDG for loading/saving, with some rework, but not sure a 68000 application could call ColdFire LDG, I believe it has to call a 68000 LDG.

Hope it clarifies,
Jean

vido
Atari Super Hero
Atari Super Hero
Posts: 601
Joined: Mon Jan 31, 2011 7:39 pm

Re: VISION 4.1a is out!

Postby vido » Sun Sep 23, 2018 12:57 pm

JeanMars wrote:Depends which application...
zview relies on LDG to load images
VISION has its own internal routines; for JPEG, it looks for JPEGD, if so it uses it else it fallback to pure 68000 code.
VISION could use LDG for loading/saving, with some rework, but not sure a 68000 application could call ColdFire LDG, I believe it has to call a 68000 LDG.

Hi Jean,

Now its clear :)
But LDG are modules and for every Coldire module also exist 68k module :)
If you have FireBee you install Colfire modules and if you have 68k computer you install 68k modules.
Vision then use the module it is installed. Like Zview.

Vido


Social Media

     

Return to “Applications”

Who is online

Users browsing this forum: No registered users and 5 guests

cron