Welcome, Guest. Please login or register.

Author Topic: We need an iBrowse replacement for 68k!!!  (Read 75019 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #554 from previous page: March 01, 2015, 09:56:29 PM »
Quote from: matthey;785708
I wonder how many scalable fonts are opened still with the mapping to bitmap fonts in Choices?

If you've set the fonts to be bitmap ones, then none :-)

Quote
The NetSurf archive I downloaded today is 3104254 bytes which is the same as the one I downloaded on February 23. The executable is also the same size.

I've re-uploaded it.  Not sure what happened last time but it should be there now.

Quote from: utri007
Few seconds more and computer crashes. Are those .otag fonts outlined fonts? Do I need to remove them?

Try running FixFonts.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show only replies by matthey
Re: We need an iBrowse replacement for 68k!!!
« Reply #555 on: March 01, 2015, 11:39:32 PM »
Quote from: chris;785720
I've re-uploaded it.  Not sure what happened last time but it should be there now.

It's noticably faster here. NetSurf is done loading from icon in about 5 seconds and amiga.org loads in about 20 seconds. That's pretty good for not having optimizations enabled yet ;).

Edit: There are still some places that are quite slow and some that may get caught in an infinite loop. I am trying to debug what looks like an infinite loop after logging into amiga.org and when being redirected back to the old thread. I see scrollbar_create(), scrollbar_make_pair() and a realloc() that I believe may be in desktop/textarea.c textarea_reflow_multiline()? Did you fix the textarea_scrollbar_callback hook for scrollbar_create()? There are several callback hooks in this vacinity which might be worth looking over. I don't get any hits but I didn't last time there was a hook problem. No hits and no freezes makes for some tough debugging.

Edit2: I strongly believe that the infinite loop is the for loop in textarea_reflow_multiline() which starts with:

Code: [Select]
for (; len > 0; len -= b_off, text += b_off {

I can see the para_end string is "Reply" and no '\n' (newline) is found. I can't see a function name for nsfont.font_split() but there is a JSR. From there:

it looks like x is 0
(x <= h_extent) skip {}
(x <= avail_width) skip {}
(line <= ta-->lines_alloc_size - 2) skip {}
(para_end != text + b_off) skip {}
(len - b_off > 0) { for loop terminates with (space <= text) before first iteration skip {}, (space == text) skip }
(line > scroll_lines) but (ta->bar_y != NULL) skip the break;
back to the top of the for loop and repeat for infinity
« Last Edit: March 02, 2015, 06:25:13 AM by matthey »
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #556 on: March 02, 2015, 10:33:29 AM »
Quote from: matthey;785730
It's noticably faster here. NetSurf is done loading from icon in about 5 seconds and amiga.org loads in about 20 seconds. That's pretty good for not having optimizations enabled yet ;).

Cool.

Quote
Edit: There are still some places that are quite slow and some that may get caught in an infinite loop. I am trying to debug what looks like an infinite loop after logging into amiga.org and when being redirected back to the old thread. I see scrollbar_create(), scrollbar_make_pair() and a realloc() that I believe may be in desktop/textarea.c textarea_reflow_multiline()? Did you fix the textarea_scrollbar_callback hook for scrollbar_create()? There are several callback hooks in this vacinity which might be worth looking over. I don't get any hits but I didn't last time there was a hook problem. No hits and no freezes makes for some tough debugging.

They aren't AmigaOS hooks, so should be fine.

Quote
Edit2: I strongly believe that the infinite loop is the for loop in textarea_reflow_multiline() which starts with:

Code: [Select]
for (; len > 0; len -= b_off, text += b_off {

I can see the para_end string is "Reply" and no '\n' (newline) is found. I can't see a function name for nsfont.font_split() but there is a JSR. From there:

it looks like x is 0
(x <= h_extent) skip {}
(x <= avail_width) skip {}
(line <= ta-->lines_alloc_size - 2) skip {}
(para_end != text + b_off) skip {}
(len - b_off > 0) { for loop terminates with (space <= text) before first iteration skip {}, (space == text) skip }
(line > scroll_lines) but (ta->bar_y != NULL) skip the break;
back to the top of the for loop and repeat for infinity

Yes, that's the dodgy bitmap font code showing through.  The split function isn't working as intended (amiga_bm_nsfont_split() in font_bitmap.c).  If you disable bitmap (diskfont) fonts the infy-looping should disappear.
« Last Edit: March 02, 2015, 10:36:33 AM by chris »
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline utri007

Re: We need an iBrowse replacement for 68k!!!
« Reply #557 on: March 02, 2015, 10:38:44 PM »
I have excatly same versions of diskfon and bullet.library that you have.

diskfont.library 45.7 (01/26/02)
bullet.library 44.1 (05/01/99)

No Outline fonts and all (two) .otag fonts removed  and fixfonts runned.

No difference.
ACube Sam 440ep Flex 800mhz, 1gb ram and 240gb hd and OS4.1FE
A1200 Micronic tower, OS3.9, Apollo 060 66mhz, xPert Merlin, Delfina Lite and Micronic Scandy, 500Gb hd, 66mb ram, DVD-burner and WLAN.
A1200 desktop, OS3.9, Blizzard 060 66mhz, 66mb ram, Ide Fix Express with 160Gb HD and WLAN
A500 OS2.1, GVP+HD8 with 4mb ram, 1mb chip ram and 4gb HD
Commodore CDTV KS3.1, 1mb chip, 4mb fast ram and IDE HD
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #558 on: March 03, 2015, 12:17:06 AM »
Quote from: utri007;785769
I have excatly same versions of diskfon and bullet.library that you have.

diskfont.library 45.7 (01/26/02)
bullet.library 44.1 (05/01/99)

No Outline fonts and all (two) .otag fonts removed  and fixfonts runned.

No difference.

You shouldn't go around deleting .otag files.

What is happening is NetSurf has decided you have a font with no name (probably due to a corrupt font cache, .font file or a bug in my code), so it is trying to read FONTS:.otag.  This probably isn't the cause of the crash, as that file open will just fail.  There is definitely a problem with the font scanner but I don't really have anything to go on to track it down.  If you're using diskfont fonts the scan is irrelevant anyway, as it's for font substitution for characters that aren't in the current font, which isn't possible to do when all your fonts are forced into ISO-8859-1.

You can trick it into skipping the font scan by creating a file "FontGlyphCache" containing the following:
0x0000 "CGTimes"

Put that file in your user directory (PROGDIR:Users/default or whatever) and it won't scan as it'll think it already has.

I'll add something to skip the scan if outline fonts aren't being used.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline QuikSanz

Re: We need an iBrowse replacement for 68k!!!
« Reply #559 on: March 14, 2015, 06:23:35 AM »
Any progress? A capable 68k solution is sorely needed.
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #560 on: March 14, 2015, 10:29:22 AM »
Quote from: QuikSanz;786320
Any progress? A capable 68k solution is sorely needed.

I've not done anything further with it.  Well, actually, I tried to fix the bitmap font stuff to make line breaks work properly (and get rid of the infy loop), but I just made it worse so gave up.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline utri007

Re: We need an iBrowse replacement for 68k!!!
« Reply #561 on: March 14, 2015, 10:55:01 AM »
Maybe someone could addvertise Netsurf in EAB? and other Amiga releated sites?  Good solution would be if we could fing a more experienced and interested 68k coder.

What would be facts? When starting it reguires only 5mb ram? I requires OS3.5/3.9 maybe it will work with OS3.1 with Reaction installed? It requires AGA or RTG.

What is current state? Is it bog slow or is it "semi useable"?

What is needed by coder? CGI version ??? What are current problems?
ACube Sam 440ep Flex 800mhz, 1gb ram and 240gb hd and OS4.1FE
A1200 Micronic tower, OS3.9, Apollo 060 66mhz, xPert Merlin, Delfina Lite and Micronic Scandy, 500Gb hd, 66mb ram, DVD-burner and WLAN.
A1200 desktop, OS3.9, Blizzard 060 66mhz, 66mb ram, Ide Fix Express with 160Gb HD and WLAN
A500 OS2.1, GVP+HD8 with 4mb ram, 1mb chip ram and 4gb HD
Commodore CDTV KS3.1, 1mb chip, 4mb fast ram and IDE HD
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #562 on: March 14, 2015, 02:54:12 PM »
Quote from: utri007;786322
What would be facts? When starting it reguires only 5mb ram?

Try 32MB.  It just about starts with 18MB so it might be possible to get it running with that amount, but I'd suggest the minimum should be 32MB.

Quote
I requires OS3.5/3.9 maybe it will work with OS3.1 with Reaction installed? It requires AGA or RTG.

The library versions requested basically ensure that OS3.5+ is required.  Maybe it's possible to get it running under OS3.1 but the amount of stuff I've already had to backport is rather high anyway (don't let anybody tell you OS4 isn't much of an improvement over 3.1 - it has so much that makes it far easier to develop for).  AGA or RTG, both should work.

Quote
What is current state? Is it bog slow or is it "semi useable"?

No idea.

Quote
What is needed by coder?

A Linux (V)M to install the m68k toolchain on.

Quote
What are current problems?

http://wiki.netsurf-browser.org/Todo/AmigaOS_frontend#OS3_Support
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline wawrzon

Re: We need an iBrowse replacement for 68k!!!
« Reply #563 on: March 14, 2015, 03:53:55 PM »
Quote from: utri007;786322
Maybe someone could addvertise Netsurf in EAB? and other Amiga releated sites?  Good solution would be if we could fing a more experienced and interested 68k coder.

will be hard to force anyone to help, especially it was called for since years and yet none volunteered.
also since there is an sdl version, that is to date stable, much faster and renders correctly it may be hard to motivate anyone for just another frontend.
Quote

What is current state? Is it bog slow or is it "semi useable"?


you mean on a real amiga? its "bog slow", i havent tested late version, but i doubt it has much improved. but it isnt a particular problem when testing on winuae, which is the primary thing to do.

i went back trying to get netsurf build under debian, just a generic target for first, i think i have at least almost all dependencies (one might be missing), but there doesnt seem to be utf8proc package available. looks like i need to compile it by hand or something. i just wonder what (major) linux platform do the netsurf people really support for their build system. it seeems much more complicated to build it in comparison to, say, aros and ubuntu seems even less suitable.
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #564 on: March 14, 2015, 05:38:13 PM »
Quote from: wawrzon;786325
you mean on a real amiga? its "bog slow", i havent tested late version, but i doubt it has much improved.

matthey's comments were that it was noticeably faster.

Quote
i went back trying to get netsurf build under debian, just a generic target for first, i think i have at least almost all dependencies (one might be missing), but there doesnt seem to be utf8proc package available. looks like i need to compile it by hand or something. i just wonder what (major) linux platform do the netsurf people really support for their build system. it seeems much more complicated to build it in comparison to, say, aros and ubuntu seems even less suitable.

The "NetSurf people" use Debian 64-bit.

utf8proc is here: http://git.netsurf-browser.org/libutf8proc.git/
As with all the NetSurf internal libraries, it doesn't get built as part of the toolchain.  You need to build those afterwards with make HOST=m68k-unknown-amigaos (I think)

I thought somebody had recently put some cross-compilation instructions for RISC OS up on the wiki (the process is more-or-less identical), but I'm buggered if I can find them.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline wawrzon

Re: We need an iBrowse replacement for 68k!!!
« Reply #565 on: March 14, 2015, 05:50:25 PM »
@chris
it made impression that it was noticeably faster, but since i didnt expected it to be usable, i have not tried it after matt did. okay, ill do later.

Quote

The "NetSurf people" use Debian 64-bit.

thats good. thx for the link, but i would like to make sure first, netsurf builds at all and produces a working binary.
 

Offline wawrzon

Re: We need an iBrowse replacement for 68k!!!
« Reply #566 on: March 15, 2015, 11:36:20 AM »
im sorry, i will be away from my studio for a couple of days/weeks, so cant do anything more what concerns amiga hardware, jut might still try to compile under debian on my tablet.
 

Offline apj

Re: We need an iBrowse replacement for 68k!!!
« Reply #567 on: March 16, 2015, 10:28:53 AM »
I've compiled my sdl version on netsurf's toolchain on ubuntu in VM.
So no ixemul. Noticed that after some browsing it gets major slowdown.

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #568 on: August 16, 2015, 12:52:24 PM »
I've fixed a lot of bad crashing on startup and other problems, to the point where NetSurf now works - mostly - on an (emulated) AGA machine.

NetSurf post-3.3 ALPHA for AmigaOS 3.5+ (save everything, back up, etc before using!)

Prerequisites: AISS and a PNG DataType.

Some Choices options which might be useful:
friend_bitmap:1 - set to use a friend bitmap.  This is usually disabled as I wasn't getting much on screen with it set, but IIRC it was helping with RTG speed so I've made it an option.
window_simple_refresh:1 - set to use simple refresh mode, saves memory
redraw_tile_size_x:100 } change the values as you like, these set the off-screen
redraw_tile_size_y:100 } render buffer size and will save memory (default is full screen)

There are also the bitmap font options, but I can't remember if I ever got those working.  Have a look earlier in the thread if you want to try them.
« Last Edit: August 16, 2015, 08:26:16 PM by chris »
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline utri007

Re: We need an iBrowse replacement for 68k!!!
« Reply #569 on: August 16, 2015, 05:16:09 PM »
Congratulations Chris :) Netsurf start and "works" both of my AGA machines.

a few considerations :

It asks TBImages assign in startup, where should I assign it?
My RTG machine uses chip ram and it is even slover than my 040/AGA
My plain AGA machine "unable to open xxx" where xxx is font name, with prety much every font.

Plain AGA machine Netsurf uses about 13mb ram to start.

But BIG step forward! It works, now those who like to use emulated machine has a useable browser. Now some speed ups and we have a solution for browser problem.

Big thanks for your hard work and patience. If you need any testing I help as much I can with my Limited skils.
« Last Edit: August 16, 2015, 05:22:23 PM by utri007 »
ACube Sam 440ep Flex 800mhz, 1gb ram and 240gb hd and OS4.1FE
A1200 Micronic tower, OS3.9, Apollo 060 66mhz, xPert Merlin, Delfina Lite and Micronic Scandy, 500Gb hd, 66mb ram, DVD-burner and WLAN.
A1200 desktop, OS3.9, Blizzard 060 66mhz, 66mb ram, Ide Fix Express with 160Gb HD and WLAN
A500 OS2.1, GVP+HD8 with 4mb ram, 1mb chip ram and 4gb HD
Commodore CDTV KS3.1, 1mb chip, 4mb fast ram and IDE HD