Welcome, Guest. Please login or register.

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

Description:

0 Members and 1 Guest are viewing this topic.

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #14 on: February 04, 2013, 06:41:06 PM »
Quote from: wawrzon;725323
you want me to mess with the toolchain build?


No; it's binutils which appears to be failing to build.  It's that you need to look at.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #15 on: February 04, 2013, 06:52:02 PM »
Quote from: fishy_fiz;725330
Can someone please point me to sources? I prefer to build offline. Also is there anything netsurf specific within the toolchain I'll need to build? (I build on 68k/os3.x itself rather than cross compiling).

Anything else that people can tell me that might save me some time would be appreciated as well.


Which sources?  NetSurf?  They are all at http://git.netsurf-browser.org
You'll need most of the libraries (libnsgif, libnsbmp, libwapcaplet, libhubbub, libdom, libcss, libparserutils.. think that's all of them)
You need to grab everything using Git unfortunately, as there's no other way to download it.  Don't bother with v2.9, there have been so many changes since then you'd be wasting your time.

You also need to download "buildsystem", which needs to go into a directory called "share" (or you can try "make install" but it could end up anywhere, or nowhere)

Start with libnsgif or libnsbmp, they are single-file libraries which will test if your build environment is working as expected.

You should be able to build them with "make TARGET=amigaos3 BUILD=release PREFIX=/path/to/buildsystem", you might not need the target bit but the makefiles expect AmigaOS to be AmigaOS 4, so it could potentially cause problems without it.

Please read the "getting started coding" page on the wiki http://wiki.netsurf-browser.org
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #16 on: February 05, 2013, 12:34:19 AM »
Quote from: fishy_fiz;725337
Bummer, I was hoping to be able to download a source archive. I wont use git, so I guess I'll have to let someone else build it. Thanks anyway.


When v3.0 is released source archives will be available for download.  The 2.9 ones are available now, but as I say it's not worthwhile working with those as 3.0 will be released in the next 2-3 months.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #17 on: February 07, 2013, 01:47:11 PM »
Quote from: wawrzon;725655
thanks. looks like you ve left all untouched. okay so just copied binutils to sources dir as binutils-2.14
still after the makefile copied it to /builddir/srcdir/binutils/ complains about denied permission.


chmod 755 /home/huhu/toolchains/m68k-unknown-amigaos/builddir/srcdir/binutils/configure
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #18 on: February 12, 2013, 11:42:57 AM »
Quote from: wawrzon;726040

a question though, i cannot find any possibility to convince the make to output the detailed information what exactly has been invoked with the full path, to be sure the correct compiler backend and tools are used. no --debug option seems to grant this, neither VERBOSE=1.. what to do? (btw libcss seem to have compiled just fine, im a little puzzled why this is all that easy all the sudden)


make -n (or is it -N?) should output the commands it is calling.  Doesn't always work though.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #19 on: March 18, 2013, 04:51:17 PM »
Quote from: apj;728829
I try to compile Chris's OS4 NetSurf.
I have half of code compiled at this moment.
If somebody knows how to implement some OS4 functions on classic,
post it here:
http://eab.abime.net/showthread.php?t=68233

I don't have an account on EAB, however:

Quote
COMPILE: amiga/schedule.c
amiga/schedule.c:28:17: pbl.h: No such file or directory

You need to build libpbl - http://www.mission-base.com/peter/source/
I use it because it's a bit nicer/quicker for controlling the list of scheduled events.

Also WINDOW_NewMenu would need to be replaced with (from the top of my head) LayoutMenus and the attach menu function (whose name escapes me at the moment), and the reverse clean-up when the window closes (in gui_window_destroy after DisposeObject(gwin->objects[GID_MAIN])).  WINDOW_NewMenu can then be removed as that's all it does.

Quote
int32 -> replace by LONG

uint32 -> replace by ULONG

int16 -> replace by WORD

uint16 -> replace by UWORD

int8 -> replace by BYTE

uint8 -> replace by UBYTE

I'd rather you didn't do that, instead add the necessary typedefs to os3support.h.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #20 on: January 19, 2015, 09:36:16 PM »
OK guys, I spent some time fixing up the 68k toolchain for NetSurf, so it now builds again and all the dependent libraries build too.

I've also spent quite a while fixing all the compiler and linker errors for the OS4 build, when passed through the 68k toolchain.  It now builds and runs (don't get too excited) as far as errorneously displaying the splash window as a long thin window at the top of the screen.  It then crashes, probably somewhere between initialising the DataTypes handler and initialising NetSurf.  If I run it on OS4 (yes, that earlier test was on OS3.5, just to check I got the same thing) I can ignore past the crash, and then it crashes creating the main window.

I should probably try to build a simple ReAction example to check that side of things is working, as the splash window couldn't be much simpler so it makes me think the macros are somehow screwed up.

I'll probably keep poking it with my stick but it would progress a lot quicker if I had some help.  Anybody?
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We n an iBrowse replacement for 68k!!!
« Reply #21 on: January 19, 2015, 11:07:44 PM »
Quote from: Oldsmobile_Mike;781980
Dumb question, but NetSurf is 4.0/4.1 only, right?  Any chance of back-porting it to 3.9 systems?  Thx!

That's precisely why I posted.

Quote from: Oldsmobile_Mike;781984
Sorry I didn't read the whole 178 posts in this thread. Post #176 mentions (quote) "yes, that earlier test was on OS3.5". So I would assume that at least at some point NetSurf ran on classic systems. Maybe I should just google it, lol. :p

Sorry, I resurrected an old thread as I thought it would provide useful context - it's a continuation of the discussion here.

Currently there is a 68k version of NetSurf, but it is based on the Framebuffer frontend.
The OS4 version is a full native GUI but it is built for OS4 only.

The intention is to back-port the OS4 frontend to OS3.9. To achieve this I've fixed the toolchain and loads of "easy" compiler errors. It's now in a broken state in that it has real bugs which need fixing. As I said, it builds and runs under OS3 but doesn't get very far.

When this thread was previously active people were struggling to even compile it. Now that's sorted I'm hoping for some actual help.
« Last Edit: January 19, 2015, 11:10:37 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 chris

Re: We have iBrowse for 68k!!!
« Reply #22 on: January 19, 2015, 11:47:48 PM »
Quote from: danbeaver;781987
The question I asked in a serpentine manor was, "Does a 680X0 CPU have enough processing power to handle the demands of Netsurf?"


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

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #23 on: January 20, 2015, 08:32:05 AM »
Quote from: Heiroglyph;781996
Where is the source with your changes?


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

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #24 on: January 20, 2015, 09:30:44 AM »
Quote from: Heiroglyph;782003
Are you cross compiling or building on the Amiga?


Cross-compiling using the toolchain in the repo.  I have a Debian 64-bit VM set up just for this.

I haven't natively built it for years, and can't say for sure whether that still works.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #25 on: January 20, 2015, 11:19:23 AM »
Quote from: wawrzon;782006
im working on compiling netsurf 2.0


There have been a *lot* of frontend changes since then.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #26 on: January 22, 2015, 01:03:06 AM »
Quote from: matthey;782083
Thanks for the work Chris. You have made a lot of Amiga changes and the C source code appears to be in good shape. It looks like you need help from someone with an AmigaOS 4 or Linux environment and with good cross-compiling skills using a newer version of GCC. That's not me but if you could build an executable that is close with SAS/C style debug and symbols then I might be able to help debug NetSurf. I doubt there is any way to get the SAS/C debug and symbols when compiling with a newer version of GCC (STABS or DWARF?) and compiling with vbcc would be more work. Do you use an ELF2HUNK utility to convert the new GCC output from 68k ELF to Amiga Hunk format? What version of GCC are you using?


I'm using GCC 3.4.6, it creates Hunk binaries without running through any utilities. I think I'm building with -gstabs already (hangover from OS4), and don't have a clue about debugging under 68k.

At the moment I just want to know why creating bitmap.image objects is failing. I suspect there's something broken in the NDK includes I'm using.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #27 on: January 22, 2015, 09:57:36 AM »
Quote from: matthey;782095
The best GUI debugger for the Amiga 68k is BDebug in the Barfly package.

http://aminet.net/dev/asm/BarflyDisk2_00.lha

The docs say that it supports STABS as well as the SAS/C (SAS D1) debug info. It might be worth a try to open a source window. BDebug can catch an exception from a crash and allow you to debug from the crash location.


Cool, I'll have a look at it, thanks.

Quote

First, make sure you are using the 3.9 NDK as Novacoder suggests. Next, you might try these fixed NDK 3.9 includes:

http://www.heywheel.com/matthey/Amiga/fixed-includes-ndk39.lha

They are from the dead AWeb web site. AWeb uses ClassACT/Reaction also and these were probably fixed by Andy Broad (broadblues).


I'm using the NDK 3.9 includes, fixed for GCC from elsewhere.  A cursory glance suggests yours are the same.  I was hoping images/bitmap.h might have been fixed but it's not in that file.

Quote

Edit: I read the bitmap_ic_relnotes from the NDK 3.9 and it sounds like the old bitmap.image was problematic:

bitmap.image 45.1 (03.02.2001)

ยท complete rewrite, as H&P don't have the sources of
  the original class. this one supports transparent
  blits to interleaved screens. The corrupted nav.-
  buttons of AWeb are gone, now.

My version with AmigaOS 3.9 is bitmap.image 45.1 (03/03/01).


I'm running my test program on OS4, so it's not that.  I've modified the integer.gadget example in the NDK (which works) to include a bitmap.image object, and it just doesn't open the window.  I must be missing something.

The same code does work when built for OS4 with the OS4 includes, which is why I was thinking there might be something wrong with the 3.9 includes.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #28 on: January 22, 2015, 12:51:48 PM »
Quote from: Yasu;782115
Will Netsurf work on a plain A1200 with 4 MB fast RAM?

I doubt it; the executable alone is ~5.5MB.

I'd suggest you'd need at least 8MB to start it, and probably 16MB to actually view any pages.  But I don't know for sure until I get it running, and I don't have a clue what the speed would be like on a 14MHz '020/AGA.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline chris

Re: We need an iBrowse replacement for 68k!!!
« Reply #29 from previous page: January 22, 2015, 07:59:23 PM »
Quote from: matthey;782095
First, make sure you are using the 3.9 NDK as Novacoder suggests. Next, you might try these fixed NDK 3.9 includes:

http://www.heywheel.com/matthey/Amiga/fixed-includes-ndk39.lha

They are from the dead AWeb web site. AWeb uses ClassACT/Reaction also and these were probably fixed by Andy Broad (broadblues).


Unfortunately they appear to be no better than the ones I was using :(
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz