Welcome, Guest. Please login or register.

Author Topic: Netsurf for 68k amigas, css capable web brower  (Read 37254 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline wawrzon

Re: Netsurf for 68k amigas, css capable web brower
« Reply #74 on: June 09, 2009, 02:09:30 PM »
@bernd:yes there are sites that load extremly long or do not load at all, like bild.de you pointed me once to. i wondered if this is maybe because netsurf doesnt get enough memory allocated or it requests further objects too lame, but this sounds bs.

to load netsurf_web_site my 060/50 setup needs 4.9 s, this is on a clean first attempt, but if you have surfed around and then tried the link first the actual time can vary around 5-6sec. same for reload (around 5sek)

wikipedia loads in 18,x s at best, but sometimes it takes up to 30s. idlea68k shows constant full cpu load while processing page.

reuters page loads basically some 14s (it only shows 4.9s shortly after) an then it loads further content. i have some hard drive activity like something is being cashed. i can scroll a little but it takes ages and netsurf seem to update the layout all the time. but maybe its due to my impatience. its a huge page too.
edit: well no, i have it open for some time now, it is rendered but being updated again and again

btw:i dont understand why you care for mos so much out of the sudden:P there is mos native port worked on by itix afaik, mos is surely better off with that. not that you sholdnt join the forces though.
« Last Edit: June 09, 2009, 02:48:59 PM by wawrzon »
 

Offline unusedunused

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show only replies by unusedunused
Re: Netsurf for 68k amigas, css capable web brower
« Reply #75 on: June 09, 2009, 02:54:22 PM »
Quote from: wawrzon;510169

to load netsurf_web_site my 060/50 setup needs 4.9 s, this is on a clean first attempt, but if you have surfed around and then tried the link first the actual time can vary around 5-6sec. same for reload (around 5sek)


Great, then your system and netsurf is faster as my OWB 68k on winuae.it need with jit 6 sec and OWB 68k do not antialias.without JIT this page need 92 sec.this page use no Java so can good compare.
 
Text look ugly on OWB 68k but netsurf have nice antialiased text.this page contain many text.

A build without freetype and use internal netsurf font system give speedup, because do no antialias, but it do not work, because no text is show.i dont know wy it not work.

also gcc add for antializing font bitfield operations, not shure how freetype is compiled, but -mnobitfield option need set for faster speed

does somebody know how can easy disable antialiasing in freetype so Artur can build a antialias free version too ?

the hubbub HTML engine used by this netsurf build print out also many lines to console, or when start from wb in nil.but some unneeded code is execute, here its also possible that it work faster.

The reuters page can be work ok, if the stop button work correct(blue x).but when i get some time the mouse pointer can move, and i have luck so i can click on it, it do not help, page load show load show.but when i scroll it seem all elements are here.

netsurf do very often memallocs.this is see because when run memtracker as wipeout give huge slowdown(4*), also on my fast winuae with 800 megabyte memtransfer rate.on amiga apps there is not such slowdown see

so better for tests on a classic not use wipeout or other memtracker

>btw:i dont understand why you care for mos so much out of the >sudden:P there is mos native port worked on by itix afaik, mos is >surely better off with that. not that you sholdnt join the forces >though.

yes and so i like to get 1 sourcetree.itix is very friendly, he help Artur and have some code in his source add that make it easier to work on OS3.x and MOS1.4.He have written in netsurf source, there seem working together possible.

but because we was not sure what problem is we want see netsurf running to see libcurl libxml libhubbub and the many other libs run well.and now can see the browser work and the way to a full browsers is GUI code only.

the sdl version you see have only very few elements.
« Last Edit: June 09, 2009, 03:11:07 PM by bernd_afa »
 

Offline wawrzon

Re: Netsurf for 68k amigas, css capable web brower
« Reply #76 on: June 09, 2009, 03:33:31 PM »
Quote from: bernd_afa;510180


so better for tests on a classic not use wipeout or other memtracker

i disabled all debug in background now but it doesnt make much difference if any at all.

Quote from: bernd_afa;510180

yes and so i like to get 1 sourcetree.itix is very friendly, he help Artur and have some code in his source add that make it easier to work on OS3.x and MOS1.4.He have written in netsurf source, there seem working together possible.

this attitude is much appreciated.

Quote from: bernd_afa;510180

but because we was not sure what problem is we want see netsurf running to see libcurl libxml libhubbub and the many other libs run well.and now can see the browser work and the way to a full browsers is GUI code only.

the sdl version you see have only very few elements.

there are still bugs to iron out. colors. text input. rendering (check http://www.bahn.de). not loading pages. i do not know how much of this is general fault of current netsurf distribution. replacing sdl with native functions might bring some speedup but i dont take it for granted. gui would be nice too, of course.
 

Offline unusedunused

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show only replies by unusedunused
Re: Netsurf for 68k amigas, css capable web brower
« Reply #77 on: June 09, 2009, 03:56:55 PM »
Quote from: wawrzon;510189
there are still bugs to iron out. colors. text input. rendering (check http://www.bahn.de). not loading pages. i do not know how much of this is general fault of current netsurf distribution. replacing sdl with native functions might bring some speedup but i dont take it for granted. gui would be nice too, of course.


oh yes, the bahn.de show wrong.i deactivate on my Internet explorer always java script and active x.its my no Java browser ;-)

The http://www.bahn.de page work without java script ok(village name completion is not done but on OWb 68k too no village completion), later when you add start and destination, is show a message activate java script or click here.when click on here, then all work too without java script.

what happen on this page with a netsurf OS4 or MOS Version ?
that the colors are wrong is because endian problems.

its really bad that OWB is program in C++.i thinks thats main reason that it is so slow and compile time is so extrem long.

and i need also much longer to find Bugs in a C++ source than in a fast c source.because when singlestep in debugger c++ source need lots more instruction for same functions
« Last Edit: June 09, 2009, 04:00:44 PM by bernd_afa »
 

Offline wawrzon

Re: Netsurf for 68k amigas, css capable web brower
« Reply #78 on: June 09, 2009, 04:49:12 PM »
Quote from: bernd_afa;510193

what happen on this page with a netsurf OS4 or MOS Version ?
that the colors are wrong is because endian problems.

that is clear. it shouldt be too hard to fix it, right?;-D

Quote from: bernd_afa;510193

its really bad that OWB is program in C++.i thinks thats main reason that it is so slow and compile time is so extrem long.

and i need also much longer to find Bugs in a C++ source than in a fast c source.because when singlestep in debugger c++ source need lots more instruction for same functions


i see. bad thing: it is seems c has been abandoned already. most available sources are >c++ for what ive seen.
 

Offline 0amigan0

  • Full Member
  • ***
  • Join Date: Dec 2006
  • Posts: 109
    • Show only replies by 0amigan0
Re: Netsurf for 68k amigas, css capable web brower
« Reply #79 on: June 09, 2009, 05:02:35 PM »
@bernd_afa & @__artur:


How difficult is it to make a MUI/Zune version, instead of SDL  ??
 

Offline unusedunused

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show only replies by unusedunused
Re: Netsurf for 68k amigas, css capable web brower
« Reply #80 on: June 09, 2009, 05:52:57 PM »
Quote from: 0amigan0;510208
@bernd_afa & @__artur:


How difficult is it to make a MUI/Zune version, instead of SDL  ??


cant say, as i told, the MUI version with MOS source can compile with MUI3.8 headers, so there seem no MUI4 parts in.but it still not work.

now must begin examine how netsurf work and what go wrong wy MUI sources not work.the good news is, it can compare in debugger with the working sdl version.

the bad thing is, i never use, and must learn from beginning how MUI work.
I dont like GUI without GUI editor.in the world outside amiga there are GUI editors used, (called RAD Tools rapid application development)

So i get the idea to test the usability of the gtk to zune wrapper and try a gtk netsurf compile.this help also to get more Unix programs easier port.

Help is welcome.if that work, then i like to have the glade GUI Editor, do somebody know a more easy portable GUI Editor ?

http://glade.gnome.org/

and at end of all, i also want that there can GUI for amiblitz programs build by using libglade

stormwizard i use for my programs, can easy build with editor, but they look not nice, MUI have no GUI Editor so i see the modernst solution to use GTK MUI wrapper and a GTK GUI Editor
« Last Edit: June 09, 2009, 05:55:14 PM by bernd_afa »
 

Offline apj

Re: Netsurf for 68k amigas, css capable web brower
« Reply #81 on: June 09, 2009, 05:57:22 PM »
I compiled with -mnobitfield like Bernd suggested.
Some dependency libs are compiled with opimisations.

Maybe it is faster now, please test.
Also it probaly doesn't crash at exit now.
« Last Edit: June 09, 2009, 05:59:50 PM by apj »
 

Offline wawrzon

Re: Netsurf for 68k amigas, css capable web brower
« Reply #82 on: June 09, 2009, 06:32:48 PM »
it isnt noticeably faster alas.
the sashimi output on exit looks like that now:
Code: [Select]

09-Jun-09   19:30:11
WORD READ from 73757266 (INST)                 PC: 73757266
USP : 0A885068 SR: 0004  (U0)(F)(-)  TCB: 0A7E4BA8
Data: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Addr: 08000ADA 08BC3178 00000000 00000000 00000000 00000000 616D6573 080023B0
Stck: 325F3100 6E736662 2D73646C 00000000 0963BF38 00000000 00000003 00000001
Stck: 00000000 00000000 096A37B8 00000000 00000000 096A382C 00000B18 09609F2C
Stck: 00000000 00000000 00000000 00000000 00000000 00000A88 50C80000 00000000
Stck: 0A8850B4 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000A88 510C0000
Stck: 00000000 0A8850F8 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 005C0871 123441C0 0002FFFE
Stck: FFFE0000 00000B18 4A2EB0CA 00000000 4A2EB0CA 00000000 4A2EB0CA 0871005C
----> 096A37B8 - "Work:Libs/ixemul.library"  Hunk 0000 Offset 00017B60
----> 096A382C - "Work:Libs/ixemul.library"  Hunk 0000 Offset 00017BD4
PC Address invalid
Name: "nsfb-sdl"  


09-Jun-09   19:30:11
Exception !!   00000002     TCB: 0A7E4BA8     CTX: 08178A90     SSP: 080023B0
USP : 0A885068 SR: 0004  (U0)(F)(-)  TCB: 0A7E4BA8
Data: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Addr: 08000ADA 08BC3178 00000000 00000000 00000000 00000000 616D6573 080023B0
Stck: 325F3100 6E736662 2D73646C 00000000 0963BF38 00000000 00000003 00000001
Stck: 00000000 00000000 096A37B8 00000000 00000000 096A382C 00000B18 09609F2C
Stck: 00000000 00000000 00000000 00000000 00000000 00000A88 50C80000 00000000
Stck: 0A8850B4 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000A88 510C0000
Stck: 00000000 0A8850F8 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 005C0871 123441C0 0002FFFE
Stck: FFFE0000 00000B18 4A2EB0CA 00000000 4A2EB0CA 00000000 4A2EB0CA 0871005C
----> 096A37B8 - "Work:Libs/ixemul.library"  Hunk 0000 Offset 00017B60
----> 096A382C - "Work:Libs/ixemul.library"  Hunk 0000 Offset 00017BD4
PC Address invalid
Name: "nsfb-sdl"  

so, it seems its been improved. it isnt deadly anyway. if you ask me the stability of the system is not affected at all.
 

Offline Fab

  • Full Member
  • ***
  • Join Date: Jun 2009
  • Posts: 217
    • Show only replies by Fab
Re: Netsurf for 68k amigas, css capable web brower
« Reply #83 on: June 09, 2009, 06:42:00 PM »
I can't believe it. This netsurf also uses ixemul?

Artur: just don't use ixemul, please (add -noixemul at compilation and link). You're just asking for deep trouble, otherwise.

Bernd: I really question your development/porting advices. :)
 

Offline unusedunused

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show only replies by unusedunused
Re: Netsurf for 68k amigas, css capable web brower
« Reply #84 on: June 09, 2009, 07:37:54 PM »
Quote from: Fab;510227
I can't believe it. This netsurf also uses ixemul?

Artur: just don't use ixemul, please (add -noixemul at compilation and link). You're just asking for deep trouble, otherwise.

Bernd: I really question your development/porting advices. :)


@fab

with libnix netsurf crashes immidiate test with the MOS source in that func in gui_init.

void gui_init(int argc, char** argv)
{

....
messages_load(lang); // check locale language and read appropriate file

but forget to test with framebuffer.maybe Artur can compile  and see if it work.

The MOS libnix source is not released.
maybe you release libnix source from MOS, then i compile that and look if it work better.

and btw.the netsurf sdl port use only 1 thread so it should not be critical.
« Last Edit: June 09, 2009, 07:39:56 PM by bernd_afa »
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show only replies by Piru
    • http://www.iki.fi/sintonen/
Re: Netsurf for 68k amigas, css capable web brower
« Reply #85 on: June 09, 2009, 09:28:33 PM »
Quote from: bernd_afa;510148
>i am not sure if there are hangs and internet access take unecessary delay.
One of the basic rules of benchmarking anything is to remove the uncertainty or your results will be totally useless. Everyone and their cousin knows this...

Doing any kind of guestimates which can be affected by the state of the internet connection is silly.

Solution: Remove the internet connection from the equation, use a locally cached copy of the page you want to benchmark. Only then you will be able to draw any kind of conclusions.

After that, the very first move is to get rid of ixemul usage. It just will not work reliably with AmigaOS code.
« Last Edit: June 09, 2009, 09:40:22 PM by Piru »
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show only replies by Piru
    • http://www.iki.fi/sintonen/
Re: Netsurf for 68k amigas, css capable web brower
« Reply #86 on: June 09, 2009, 09:34:26 PM »
Quote from: bernd_afa;510235
@fab

with libnix netsurf crashes immidiate test with the MOS source in that func in gui_init.

Have you actually figured out why it crashes? Surely developer of your skill is able to do this?
 

Offline x303

Re: Netsurf for 68k amigas, css capable web brower
« Reply #87 on: June 09, 2009, 10:33:16 PM »
Quote
with libnix netsurf crashes immidiate test with the MOS source in that func in gui_init.

void gui_init(int argc, char** argv)
{

....
messages_load(lang); // check locale language and read appropriate file

but forget to test with framebuffer.maybe Artur can compile  and see if it work.

The MOS libnix source is not released.
maybe you release libnix source from MOS, then i compile that and look if it work better.
Why not figure out what instructions crash and replace them with the same ones from vbcc's posixlib ???
These are freely available.

x303 :D :D :D
 

Offline kolla

Re: Netsurf for 68k amigas, css capable web brower
« Reply #88 on: June 09, 2009, 11:20:57 PM »
Arent there working mui gui builders?
Wasn't there one called MUIBuilder? :)
« Last Edit: June 09, 2009, 11:25:36 PM by kolla »
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC
---
A3000/060CSPPC+CVPPC/128MB + 256MB BigRAM/Deneb USB
A4000/CS060/Mediator4000Di/Voodoo5/128MB
A1200/Blz1260/IndyAGA/192MB
A1200/Blz1260/64MB
A1200/Blz1230III/32MB
A1200/ACA1221
A600/V600v2/Subway USB
A600/Apollo630/32MB
A600/A6095
CD32/SX32/32MB/Plipbox
CD32/TF328
A500/V500v2
A500/MTec520
CDTV
MiSTer, MiST, FleaFPGAs and original Minimig
Peg1, SAM440 and Mac minis with MorphOS
 

Offline unusedunused

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show only replies by unusedunused
Re: Netsurf for 68k amigas, css capable web brower
« Reply #89 from previous page: June 10, 2009, 09:59:32 AM »
Quote from: Piru;510249
One of the basic rules of benchmarking anything is to remove the uncertainty or your results will be totally useless. Everyone and their cousin knows this...



it count not the exact time, because in real world internet load time can differ around 1-2 sec on fast server(as the netsurf and other sites i name are.)

Everybody knows that when a page on a amiga/ winbrowser can load in 1-2 sec and OWB need for this 90sec(without java script), then the influence of internet acess is about 1-2% at overall time, or something is bad in code.

and only this value is usefull how much slower it is in compare to aweb or OWB and if it is usefull

>Have you actually figured out why it crashes? Surely developer of >your skill is able to do this?

i have no time and fun to do so, Artur build first libnix and ixemul version too that crash.I look on both, but soon i notice libnix crash earlier.

When i port a Unix program i choose always the best solution.and this is not use libnix and add the missing functions, this is use a bsd kernel on amiga os, (ixemul)

>After that, the very first move is to get rid of ixemul usage. It just >will not work reliably with AmigaOS code.

and wy not ?

you cant compare MOS ixemul with 68k ixemul.
MOS ixemul have 2 very bad bugs, that make it very unstable, i find and fix that.i can tell you what places make problems.

when you use pngcrush and a picture that ami_stuff send me, and the MOS largeread code is enable, then there is extrem slowdown (more than 10*).it happen only on 1 picture.i deactivate that(ixmeul V48 have this code not) and all work ok

#if LARGEREADS
   r = fp->_r;
   /* TODO: should limit to specific buffering modes? - Piru */
   if (resid >= r + fp->_bf._size) {

      /* empty current buffer first, if a

--------------------

then next is,

in __write.c last MOS source have disable  IXTTY_RAW.
line in V48 was this.

#define TTY_NLCR_ENABLE (IXTTY_RAW |  IXTTY_OPOST | IXTTY_ONLCR)

when do a fh = open(audio:xxxxxxx) and do write(fh,buf,len)

give crap audio data hear on ahi.

use the V48 code fix that.

also i get now information wy ixemul V48 cant work on MOS even if MOS is called that it can execute 68k software.

its due to emulation bug.yes i call it a Bug, because when the AOS supervisor call is not support by 68k then MOS should nicely stop the program and tell supervisor is not support on 68k.

here is log output i get from a user and symbolinfo is in ixemul in.Here you can verify yourself hits come from supervsior if you dont believe that.

-> mlnet Hunk 1 Offset 0x000d0fe8

PPCStackFrame History:
StackFrame[ 0].LR-> Address 0x25660c70 -> mlnet Hunk 1 Offset 0x000c46d0
StackFrame[ 1].LR-> Address 0x25661860 -> mlnet Hunk 1 Offset 0x000c52c0
StackFrame[ 2].LR-> Address 0x2566d5bc -> mlnet Hunk 1 Offset 0x000d101c
StackFrame[ 3].LR-> Address 0x25668efc -> mlnet Hunk 1 Offset 0x000cc95c
StackFrame[ 4].LR-> Address 0x25668f50 -> mlnet Hunk 1 Offset 0x000cc9b0
StackFrame[ 5].LR-> Address 0x2565c2dc -> mlnet Hunk 1 Offset 0x000bfd3c
StackFrame[ 6].LR-> Address 0x2565c3e0 -> mlnet Hunk 1 Offset 0x000bfe40
StackFrame[ 7].LR-> Address 0x22f0bd58 -> MOSSYS:LIBS/ixemul.library Hunk 1 Offset 0x000088f0
StackFrame[ 8].LR-> Address 0x22f156b8 -> MOSSYS:LIBS/ixemul.library Hunk 1 Offset 0x00012250
StackFrame[ 9].LR-> Address 0x22f0bc1c -> MOSSYS:LIBS/ixemul.library Hunk 1 Offset 0x000087b4
StackFrame[10].LR-> Address 0x10121970 -> Module Hunk 0 Offset 0x00021970
StackFrame[11].LR-> Address 0xdeadfee1 **Not Valid**


MOS ixemul use that code and i guess its a bad hack and can break compatibility, when just set sr to 0 instead of getting the correct value.

#ifdef NATIVE_MORPHOS
  sr = 0;
#else
/*#ifdef MORPHOS
  if (has_morphos)
    sr = 0;
  else
#endif*/
    {
      asm volatile (" \n\
   movel a5,a0 \n\
   lea   Lget_sr,a5 \n\
   movel 4:w,a6 \n\
   jsr   a6@(-0x1e) \n\
   movel a1,%0 \n\
   bra   Lskip \n\
    Lget_sr: \n\
   movew sp@,a1        | get sr register from the calling function \n\
   rte \n\
    Lskip: \n\
   movel a0,a5 \n\
       " : "=g" (sr) : : "a0", "a1", "a6");
    }
#endif


I change ixemul now on two places to use AOS command.setsr.

important is that use gcc inline LPT stubs to not change flags on call
 
  sr=SetSR(0,0);

and some tests show this place make no problems.ixemul V61.2 contain now no supervisor calls.

now problem when run under MOS is ixpipe.the MOS version have add code and fake a wbstartupmessage, because MOS ixemul want read on ixpipe-handler wbstartupmessage.

fake a message i think is a unclean solution and i dont want 2 diffrent ixpipes to test more easy with V48 and V50 and above.

/* pr_CLI is NULL since we are a handler, so ix_open will expect a wb message. Fake one. */
  port.mp_Flags = PA_IGNORE;
  NEWLIST(&port.mp_MsgList);
  msg.sm_Message.mn_ReplyPort = &port;
  msg.sm_Process = &me->pr_MsgPort;
  msg.sm_NumArgs = 0;
  msg.sm_ToolWindow = NULL;
  msg.sm_ArgList = 0;
  PutMsg(&me->pr_MsgPort, &msg.sm_Message);

  ixbase = (APTR)OpenLibrary ("ixemul.library", NEEDED_IX_VERSION);

------

so new ixemul version need also correct ixpipe 68k for now.
more progress reports i dont get, but MOS OS4 is promotet to have a 68k emul and so it should execute 68k code and nothing else is ixemul.
« Last Edit: June 10, 2009, 10:02:15 AM by bernd_afa »