CPCWiki forum

General Category => Programming => Topic started by: rpalmer on 07:06, 07 January 12

Title: CPC web browser/Internet Applications
Post by: rpalmer on 07:06, 07 January 12
Hello everyone,

Well I have been very busy getting my CPC-Ethernet card up and running, but have yet to test it on a real connection.  I have an in-built test mode where I can insert messages and inspect out going ones and it appears to works as expected.  To date it can setup the TCP/IP stack for DHCP and ARP with simulated test data (as captured with Wireshark). Its next phase is with a simulated telnet session as an external application, which will take some time as i had to capture a session using wireshark on the PC and it seems like there is an enormous amount of data to simulate.  But if this does goes as expected then there is no reason why a real connection would not work (lets cross my fingers that is does work).

So now is the time for a web browser, albeit one that can only handle text (I can make handle some graphics, but given that they are often in the Mb's that is going to be one hell of a task!). The eventual first beta version will make it ready to demonstrate the apps for the TCP/IP stack with the API (so people can see a real example of the TCP/IP API in action).

My first phase is to simply get the code to compile with a minimum set of functions where one can load a simple HTML file and display on the screen.
There will be no internet connection (in the first beta) as the telnet testing needs to happen first whereby I can get it accept external messages and then send messages out on real connection.

My first impression of the compiled code appears it will fit with the lower 16K memory with some of the code sitting in the external banks, however the severely cut down version when updated will no doubt extend the current code size to a point where multiple compiles are required to get a working version.

The web-page content can only be 256K in size which appears to more than enough for now, but as the memory management is extended it maybe possible for the 4Mb expansion to be used for bigger pages.

The cursor controls are via the keyboard, but these can be configured to use the joystick and hence any mouse device (aka bryce productions). The cursor controls and hyperlink selection will operate as in existing browsers, so no special keys sequences are required.

Please understand that at this stage the code only compiles (and would not run as the application requires fonts, configuration and test data to be setup). All of which is also being created at this time.

The browser will only handle a sub-set of the HTML V4.0 specification as shown in design notes, but as the app develops there is likely to be more to come.

If anyone wishes to see the code as it currently stands, you find the attached file showing what I have done so far.  Included in the zip is some design notes.

The first useable version (when completed soon) will also include a .DSK image with all the required files to start up a session of the browser to view a simple HTML file.
Title: Re: CPC web browser/Internet Applications
Post by: Gryzor on 12:13, 09 January 12
Oh man, sfi-fi coming to a CPC near you...
Title: Re: CPC web browser/Internet Applications
Post by: TFM on 19:28, 09 January 12
Excellent work Richard! You invested a lot of time and work. This looks all very promising  :)
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 20:21, 14 January 12
hello everyone,

Well I have managed to get an executable version of the browser.

The attached code has compilable executable, file1 and file2, but the HTML rom has some fixed addresses that need correcting (if the routines are to be accessed).

The functions I have got working are:

- Opening a URL (but does not load it)
- Links Manager to view and select, I have coded save and load (but not tested it)
- Information (Version/History)

To run the app within winape:

1. Install the ROMs (any valid sockets)
2. Initialise TCP/IP with - |TCPIP.INIT,1500,1,32768
3. Execute the app with - |TCPIP.APP,"cpcb",&170

The Winape machine is configured as 6128 classic with all 512K expansion memory.

To use the app, see design notes (in general single keys on keyboard access menu/submenus, e.g P for Page menu)

Regards
rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: TotO on 14:41, 15 January 12
Nice begin.
Why not porting Lynx web browser for the CPC?


http://en.wikipedia.org/wiki/Lynx_(web_browser) (http://en.wikipedia.org/wiki/Lynx_(web_browser))
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 19:34, 15 January 12
TotO,

I have indeed downloaded the C source for a version of the lynx browser, but the code is far too large to be built in one step and the resulting executable would not be fast enough for the CPC even it were compiled with existing compilers. Also the the source has many C particulars which the CPC compilers cannot handle.

The lynx web browser also has a graphical front-end to handle fonts of various sizes.

My version has a limited set of fonts available and also the browser is at first a beta version to get the most basic of functions up.

I cannot yet get the CPC to handle style-sheets, java/javascript and many more features of HTML V4.0.

For now I intend to get the browser to handle:

1. Simple text
2. Hyperlinks
3. Tables
4. Frames (limit to 1 for now).

As I develop the browser there will no doubt be enhancements and improvements to get more features into it.

I have already updated the version I previously uploaded where there are now more menu options available to see.  Once all menu options work as expected I will again upload this version so that people can provide comments. Once all of the menus are complete this leaves me with the last thing on the list of beta functions to work on which is the loading and rendering of the HTML.

I hope that when this app is running I will no doubt like to hear about what people like to see in the browser.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: Bryce on 22:30, 15 January 12
That's some impressive goals you've set yourself, I hope you reach them. I'm looking forward to trying it out, just to see what our good old CPC is actually capable of.

Bryce.
Title: Re: CPC web browser/Internet Applications
Post by: Gryzor on 12:36, 18 January 12
Any screenies? :)
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 20:25, 18 January 12
Gryzor,

I have managed to get all the menu options completed (except for some web-page specific ones).

I will soon post the executable version in a .dsk version so everyone can play with the version.

I have yet to get the HTML to load and view as I am working on that part right now.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: Optimus on 12:15, 19 January 12
That sounds great.
I just didn't have the luck to run it properly under Winape32.


The Winape32 version I have has configuration of CPC6128 with Parados.
I don't know what proper positions to place ROMS are.
But I tried UPPER 1 and UPPER 2
Also I tried UPPER 8 and UPPER 9 (just after PARADOS)


The web browser loads and I see a glimpse of it, but then I get a sudden reset. Pausing the emulator just before the crash I see a "bad command"

Title: Re: CPC web browser/Internet Applications
Post by: TFM on 18:04, 19 January 12
Quote from: rpalmer on 20:25, 18 January 12
I have yet to get the HTML to load and view as I am working on that part right now.

Well, a question for me would be if it is important to 'understand' the complete HTML language, or can you just work well with a subset of the HTML commands?

Is there a list of HTML commands in the net? I mean a list of important commands that should be implemented in any browser?

Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 18:11, 19 January 12
As I suggested earlier regarding a CPC browser, I'll suggest again:

Do it like Opera Mini does. The CPC browser fetches all pages from a specific server dedicated to the CPC browser. This server will fetch the real page from the actual server, and transform it into CPC code.

I.e., you type www.google.com (http://www.google.com)
The CPC-browser tells the CPC-browser-server (at some IP address) to fetch www.google.com (http://www.google.com) and transform it into something more lightweight. Reduces traffic.
The transformation could simply be converting HTML to some simpler format displayed by the browser. But could also just be a simpler HTML format.
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 19:38, 19 January 12
TFM/FS,

There is a PDF of HTML 4.0 which details the whole specification.  I have downloaded it.  The browser will only handle a subset of the commands as they are quite difficult to get working (such as javascript for the <script> command). I have attached the text version.

Optimus,

I am uncertain why the version did not work, but will look into it.  At the moment the WinAPE i have configured does not use ParaDOS (only standard AMSDOS).
The version is had running was to have TCP/IP rom in slot 4 with HTML rom in slot 3. The roms themselves don't care which slot either is in and the browser has not hard wired ROM numbers.

mr_lou,

The whole purpose of the browser was to be able to get the pages direct from the website, however a CPC-browser server can be used should someone wish to create it. The CPC browser server is in essence similar to a secure VPN which pre-processes encrypted traffic outside of the browser.

The CPC browser will NOT be capable of handling graphics as it would slow down the CPC to such an extent that usability would become an issue.  However this first version is just to get the whole ball rolling at least and no doubt the future versions may make the graphics possible.
Title: Re: CPC web browser/Internet Applications
Post by: TFM on 21:22, 19 January 12
Aha! Thanks' a lot.

I remember when people talked that HTML is outdated and that everyone will move to XML or whatever. Now it seems like we still stick with HTML. Actually a lot of 8 bit relevant pages seem to be pretty close to 'just easy HTML' - some even excluding gfx. :)
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 10:49, 24 January 12
Hello all,

I have checked my code and cannot seem to find out why someone had encountered a problem.

Alas, I have progressed on to complete the browser to now have a workable version to load only text files and to allow for scrolling. HTML loading is being developed as we speak.

The Find and Find Next options are not yet available as is handling fonts (but the browser can load up font files).

The attached zip contains the ROMs i used to configure my version of winape for tests.

My config for winape has

ROM 0 - OS6128
ROM 1 - BASIC1-1
ROM 3 - HTML
ROM 4 - TCPIP
ROM 5 - HDOSDR
ROM 7 - AMSDOS

I still have one issue, it's when the browser exits as it appears to lock up Winape and reboot option sometimes does not reboot.

If anyone tests this version, could you please let me know what you think of the interface and perhaps any suggestions to improve it.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: 00WReX on 13:06, 24 January 12
Just gave this a very quick try using WinCPC and it went fine...exit also functioned fine.

Good stuff.

Cheers,
Shane
Title: Re: CPC web browser/Internet Applications
Post by: Gryzor on 20:11, 25 January 12
I actually like the Opera mini approach. If someone could code a server we could host it here...


The browser itself could have a switch to, erm, switch it to 'direct' mode.
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 22:39, 25 January 12
Gryzor,

I guess having a server to perform most of the file requests to the net is possible, but the CPC browser only handles test and no graphics. This means the a server will in essence do nothing more than what the browser does in the first place.

The design of the CPC browser to handle internet files is

a. Execute a request to download the HTML to a local file via the TCP/IP APIs.
b. Load the local file into the browser as is.
c. Render the file as per the HTML commands which the browser has implemented.

As you can see step 'a' has no gain in performance when a server does nothing more than get the file as the browser would still need to do the same thing from the server (in fact it may slow down the overall performance).

There would be a gain in performance if the CPC browser were to include graphic images, in which case the server could do the conversion to CPC screen formats much faster than what the cpc could ever do.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 07:55, 26 January 12
Quote from: rpalmer on 22:39, 25 January 12c. Render the file as per the HTML commands which the browser has implemented.

The problem there is, that webpages nowadays are usually very complex, stuffed with Javascript using Jquery libraries and plugins. Tables, stylesheets, Flash, HTML5 canvas stuff etc etc etc.
Your first thought is of course that you just avoid loading these things, but that's not always possible.
And then you have lots of different image formats, for the slow CPC to render.

By using a server you can give all the CPU demanding work to that. Have the server fetch the page, convert whatever images there might be into CPC image-bytes, arrange tables in a vertical structure, maybe even implement a few HTML5 canvas stuff. Then return this CPC-browser-optimized "CPC-html" code.
Doing it this way will sometimes be slower when going through the server - unless the page requested is already cached. But the time lost you will win back in the rendering process.
Title: Re: CPC web browser/Internet Applications
Post by: Gryzor on 10:36, 26 January 12
Mr_lou said it. IMO, even without images there's still lots of work to do in order to have a presentable page. It's not purely a matter of stripping images.


The current page, even without images, still weighs a hefty 186kB...
Title: Re: CPC web browser/Internet Applications
Post by: ced64k on 12:18, 26 January 12
You can set the user-agent to mobile to get a lightweight version of the websites (where this option exists, of course)

Like this : http://www.cpcwiki.eu/forum/?wap (http://www.cpcwiki.eu/forum/?wap) It's already more "compatible" with CPC  :D
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 19:00, 26 January 12
It would be nice to have a user agent handle the brute force conversion, but for now lets get crawling before we start walking and then sprinting.

The browser configuration can handle pages of HTML up to 256K, so 186K is not beyond reach.

As for pages that have things like javascript and so on, these may well end-up needing a user-agent to get a complete viewable page.

I can't stress this enough that we need to get something working first and then improve on it to get more features into a useable version with modern web-pages.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: TFM on 06:34, 27 January 12
Well, I know writing a Manual really suxx. But for anybody else (than the programmer) it is really a "must be" to have a manual. So I just want to encourage to do a comprehensive manual  :) :) :)
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 08:41, 27 January 12
People with techno-joy never reads instructions.

Eddie Izzard's Encore on Computers (http://www.youtube.com/watch?v=k6C_HjWr3Nk#)
Title: Re: CPC web browser/Internet Applications
Post by: robcfg on 09:25, 27 January 12
Control, P, Print! Control, P, Print!  ;D


Eddie Izzard is an awesone comedian, I have this show, 'Glorious', on DVD. My favorite is still 'Definite Article', hehe.
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 11:18, 27 January 12
yes, I will write a comprehensive manual so that everyone will have all that they need to know in order for the browser to be as easily usable as possible.


My most recent version now loads HTML and can handle simple hyperlinks.

Next on the list are tables, then frames

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: TotO on 13:26, 27 January 12
QuoteNext on the list are tables, then frames
Is, tables and frames, already used today ?
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 13:29, 27 January 12
Quote from: TotO on 13:26, 27 January 12Is, tables and frames, already used today ?
Of course. Why wouldn't they be?
Title: Re: CPC web browser/Internet Applications
Post by: McKlain on 14:08, 27 January 12
Tables must be used for tabular data, as they are intented to be. Frames are evil.
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 14:09, 27 January 12
Quote from: McKlain on 14:08, 27 January 12Tables must be used for tabular data, as they are intented to be. Frames are evil.
Pressing TAB while in a table will not jump to the next cell, if that's what you mean.
Why are frames evil?
Title: Re: CPC web browser/Internet Applications
Post by: McKlain on 14:18, 27 January 12
I mean that tables must NOT be used to make the layout a website. It's 2012, guys.

And frames are evil because they are not good for the user, they just save time to the guy developing the website. How can you link to a particular page in a website that uses, let's say, 3 frames? One for the header, another one for the menu and another one for the content. You can't. Again, it's 2012 already.
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 14:21, 27 January 12
Quote from: McKlain on 14:18, 27 January 12I mean that tables must NOT be used to make the layout a website. It's 2012, guys.
Why not?

Quote from: McKlain on 14:18, 27 January 12And frames are evil because they are not good for the user, they just save time to the guy developing the website. How can you link to a particular page in a website that uses, let's say, 3 frames? One for the header, another one for the menu and another one for the content. You can't. Again, it's 2012 already.

It's 2012? What has that got to do with anything?
It's easy to link to a particular page like you ask. I see no problem. Why are frames not good for the user?
Frames are heavily used in e.g. Javadocs for example. I see no problem.
Title: Re: CPC web browser/Internet Applications
Post by: McKlain on 14:38, 27 January 12
Quote from: mr_lou on 14:21, 27 January 12
Why not?

Because you are mixing presentation and content. And they must be separated. To give style to your website you use CSS, and ideally your website must be perfectly readable when you remove the stylesheets and use just plain and simple html. Also that gives you the posibility to have different designs for different screen sizes and devices just by using a different stylesheet.

Quote from: mr_lou on 14:21, 27 January 12
It's 2012? What has that got to do with anything?
It's easy to link to a particular page like you ask. I see no problem. Why are frames not good for the user?
Frames are heavily used in e.g. Javadocs for example. I see no problem.

Honestly, no idea of what javadocs is. I'm not a programmer  ;D

Again, how can you give me a link to follow in a website like the one in my example? Of course you can link to a single page directly, but a "normal" user can't do it just by copying the address on the url bar. And if someone lands on a single page of your website made with frames, you must use a javascript routine to make the frameset load, and load that page inside the "content" frame.

Honestly, too much trouble when you could just use server side includes and make your life and the life of the user more easy.

Well, we are going a bit offtopic here  ;D
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 15:22, 27 January 12
Whether to separate presentation and content or not is ones own choice.  ;)
I do websites for a living, and I know what you're talking about. I just believe it's a hyped up thing, and I have yet to encounter the need for separating presentation and content in such a degree that I can't use tables so form my layout.

And yes, you'd use a javascript on the page to load the frameset - which is what people who prefer frames do. No problem with that.
Other ways of doing things often require other javascripts to handle various stuff. I don't see a problem.

In any case - many people still use both tables and frames, which was the question. Even those who does avoid using tables for layout, can easily use tables for...well, tables.
Title: Re: CPC web browser/Internet Applications
Post by: McKlain on 15:36, 27 January 12
Quote from: mr_lou on 15:22, 27 January 12
Even those who does avoid using tables for layout, can easily use tables for...well, tables.

Cause that's what they are meant to be used for  ;D

If we don't start by using the html elements properly, to give meaning to the content, we are doing something wrong.

I don't think that separation of content and presentation or semantycs are a hyped up thing. I've been working in web design since 1999 and I know by experience that the use of all those things are benefitial and also are the only way to move the web forward.
Title: Re: CPC web browser/Internet Applications
Post by: TotO on 15:44, 27 January 12
Quote from: mr_lou on 15:22, 27 January 12
Whether to separate presentation and content or not is ones own choice.  ;)
[...] In any case - many people still use both tables and frames, which was the question.
Sure, you can make "quick and dirty things" like many lazy guys.
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 16:26, 27 January 12
It's been many many years since people first started talking about avoiding use of tables for layout. Many years. And I still haven't run into a situation where I needed to not use tables. When I do, I will.
So far I haven't made a single website that required use of different layouts depending on device. When that day comes, I'll probably still be using tables in two different solutions, since I'll probably be using different procedures for each device anyway. There's a reason we have jQuery and jQuery Mobile. Can't run jQuery on a mobile device. Need to use jQuery Mobile. So need to make two different solutions anyway - and you can layout both of them with tables if you want.
Lots of dreams out there. Code once, run anywhere. Avoid tables, view anywhere.

It's not like I don't get it. I know what you mean. I just don't care. And I really can't see how that'll ever screw up the web. Google finds the sites I make fine, no problems. (In the beginning of the avoid-tables-debate, one of the reasons were actually that search engines didn't like tables. That's not the case anymore though).
So, I'll keep on doing it that way, until I see a problem with it. Still waiting. So far all I encounter are people complaining I shouldn't do it, as if I'm hurting their feelings. Hyped up I say.
Title: Re: CPC web browser/Internet Applications
Post by: McKlain on 16:32, 27 January 12
Well, I can do whatever I want with a website wich is well formated and uses CSS. Anything. But I can't change the layout if you are using tables, just the decoration.
Title: Re: CPC web browser/Internet Applications
Post by: mr_lou on 16:36, 27 January 12
I could also add, that I've spent the last 14 months or so developing a system for my work, which is now used by all employees to keep track of orders, time, customers, statistics, etc etc. You name it. It handles everything now.
When I began working on it I thought I'd do it using HTML5, because it's supposed to run on mobile devices like tablets and iPad too. But of course it doesn't. First there's jQuery which needs to be replaced with jQuery mobile. Then there's the fact that you just can't drag stuff on a tablet because it thinks you want to copy things. Bottom line: Mobile version will need its own implementation anyway.

As I said, I understand the point, the meaning, the thought behind separating content and presentation. Reality is just another thing.

And that's how it is with most things. Lots and lots of great ideas and thoughts. They just rarely work out in real life.

Quote from: McKlain on 16:32, 27 January 12Well, I can do whatever I want with a website wich is well formated and uses CSS. Anything. But I can't change the layout if you are using tables, just the decoration.
And how many times have you had to change the layout on a webpage? I've never had to. And if I do someday, I'll just edit the HTML instead of the CSS. What's the problem?
Title: Re: CPC web browser/Internet Applications
Post by: Ynot.zer0 on 17:04, 27 January 12
can we get back on topic?   (Please feel to have the jQuery / jQuery mobile, tables, iframes, CSS debate on another thread - I might even join in, being someone who spent 7 years from 2001-2008 solely focused on mobile tech  :P  )




I am interested in the way the browser is going to strip out the content of the page to render it as text only.


(I recall that Prodatron started to do a SymBrowser as a way to render HTML and images, but then he disappeared into the ether and I used to wonder how he was technically doing the parsing)


Pre-processing a web site via a server app is the most logical way of stripping out the "noise" (ie. all the cr@p apart from the raw text that web site designers (note, I didn't say programmers) seem to want to include to make things look shiny and flashy), although it'd mean I'd have to host that server app on my server in the garage (or someone elses) and that kind of makes a huge dependency on it being available.  It's what we used to do when I worked for AvantGo, that technology worked and rendered web sites out to Palm, Windows CE and Symbian devices so all the mobile devices could access and see the same web sites in their own way.


I've just finished re-setting up my CPC 464 and CPC 6128 so they are usable again once more and they take pride of place next to my work laptop(s).  I would love to be able to work on the work laptop and surf CPC specific sites on the CPCs...  8)




Mr.rpalmer keep up the good work and dedicate as much time & effort as you can, there is a lot of interest in what you are doing and if I could code in ASM I'd offer to help, sadly it's alien to me  :o   although you seem to be a master of it  ;D

Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 19:43, 27 January 12
People,

I just want to say that I am implementing as much of the HTML v4.0 specification as I can. That is why I am implementing tables and frames, whether they are used is another story, but at least the browser can handle them if they are encountered.  The specification also details things like forms, lists and input.  These too will be looked at for implementation, so please be patient.

The use of CSS, Stylesheets, etc will not be implemented in the current version of the browser as that would mean I would need to create engines for them and no doubt need more memory to store them.  The most common stuff i am encountering is java based and this I can not do as i would more than likely have to pay a huge license to implement.

As for how I am stripping out stuff to have only text, well various commands that make up the HTML v4.0 specification do nothing and the code simply skips them and any associated data to the next command.

I am also getting the fonts to work as up til now only the default system chars are being used.

For those who are interested in the code, I will also produce some documentation to show how I implemented the browser.

To use see previous commentry.

Open file 'test2.htm' using the key sequence p, o and then enter the filename followed by the enter key.
The page is displayed and the hyperlink is assigned to the text "test1 link".
move the cursor to the link and press the space bar.
The linked file is then loaded.

People can view the HTML source by simply pressing the sequence P and then V.
The escape key will exit the source view and if space is pressed another screen full of text is shown (however if no further text is available a blank page is shown).

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: MacDeath on 08:40, 30 January 12
What would be the display resolution (and mode) for this Browser ?

Would it use "normal" font or some special  (reduced character size) fonts ?


I mean, even in 640x200 you can't put that many text, and this 2 colour mode is not that good to the eyes.
Would it support some overscan ? a 320x256 mode1 perhaps with letters in 4x8 ?
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 11:25, 30 January 12
MacDeath,

I am currently restricting my web page display in the default mode 2, since it gives the most screen real estate to view text. This mode also makes the routines less complicated in handling the different modes with respect to effects on the characters (such as underline, strike-through, etc). I will look at adding some colour changes to make it appear more suitable in future versions.

To have a lower resolution screen would make the HTML rendering look awkward with 4x8 character letters/symbols. However it is not beyond reason that when the browser is complete I might be able to adjust the rendering to use other modes.

I am also not planning to implement an overscan as this will also eat into the TCP/IP stack as it uses 2 timers (one for the stack/API and another for the device) and so this would make the overscan impossible to work as expected or it will interrupt the TCP/IP to create errors.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: Optimus on 12:04, 01 February 12
Frames are like Goto. It's like forbidden fruits. The only situation I encounter with these things is purists screaming at me that this or that is evil. Even when sometimes it makes sense to use (like goto at rare occasions). At least I finally hear some of the reasons now for frames, not yet entirely convinced though.
Anyway, in 1999 when I did my first site in html I have used frames. I somehow liked it.  And the index html was not linking to the main framed website, it was a simple page that got you there through another link.
Title: Re: CPC web browser/Internet Applications
Post by: TFM on 20:40, 01 February 12
Hey guys, it doensn't matter how you think the internet should be. What matters, is ONLY the reality. Look at the internet pages, look how they are made. This is what you get and this is what you have to cope with!
Title: Re: CPC web browser/Internet Applications
Post by: McKlain on 22:29, 01 February 12
Quote from: TFM/FS on 20:40, 01 February 12
Hey guys, it doensn't matter how you think the internet should be. What matters, is ONLY the reality. Look at the internet pages, look how they are made. This is what you get and this is what you have to cope with!

It does matter. We just want to make the web better for everybody, we are not purists or snobs, we want things to be done right.

If I take a look at the world and I can change it for the better, why do I have to be happy with how it is right now just because that's how it is?
Title: Re: CPC web browser/Internet Applications
Post by: Ynot.zer0 on 22:31, 01 February 12
dont' feed them...


The Troll Hunter - Official Trailer (http://www.youtube.com/watch?v=TLEo7H9tqSM#ws)
Title: Re: CPC web browser/Internet Applications
Post by: McKlain on 22:36, 01 February 12
Whatever, good night and good luck.
Title: Re: CPC web browser/Internet Applications
Post by: TFM on 00:02, 03 February 12
It's surely good to make a better web and a better world. But right now we should stay (at least with one leg) on earth. And I really want to encourage to go on in making it better. However, defining for others what's "right" and "wrong" goes IMHO too far. I already live in a Military Dictatorship, I don't need that in the net ;-) And don't take it too serious. We all want to make things better.
Title: Re: CPC web browser/Internet Applications
Post by: Ynot.zer0 on 23:30, 05 February 12

Hi Mr.Palmer,

...as a newbie to this, can you help me along the way with testing this?

I just managed to get this setup in WinApe.  I installed the ROMs as defined earlier.  I then execute:

1. Install the ROMs (any valid sockets)
2. Initialise TCP/IP with - |TCPIP.INIT,1500,1,32768
3. Execute the app with - |TCPIP.APP,"cpcb",&170

This errors with file not found, it was trying to load home.htm

I inserted the new .DSK into floppy drive A.

I followed the instructions, pressing P and the O (for Open) and entered test.htm.  It appears to work, but it just shows a flashing cursor on line 1.


Am I missing something?

Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 09:05, 06 February 12
Hi ynot.zer0,

I dont know why you dont see the line of text.

You can try the following attached file to see if that version will work okay.

The latest one now handles hyperlinks (but there appears to be an issue with locating the label attached to the URL).
It also handles searching for text (but has not been fully tested).
If people wish to view the HTML just press P followed by V.

There are two additional HTML files (test2.htm, test3.htm).

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: Ynot.zer0 on 14:12, 06 February 12
Hi, so I tested out the new DSK.  same result  :(


I've attached some screenshots of the steps and my config.  I'm using WinApe 2.0 Alpha 18.
I've added your specific ROMS and I found I had to check
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 03:25, 07 February 12
ynot.zer0,

I noticed you have the AMSDOS ROM in another slot other than 7.

I do not have the multiface enabled on my configuration of winape, since WinApe can interrupt and provide details.

If moving the ROM still causes an issue, i can zip up my whole WinAPE config and email that direct to you with the required setup already done so nothing should get in the way.

I also have my rom under AMSDSO from slot 7 down (but the code for each has no specific's which restrict their locations).

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: Ynot.zer0 on 10:31, 07 February 12
I must still be mentally suffering from the electric shock - why was AMSDOS not in slot 7?!?!


After doing that, YAY! all is looking good   :o
Title: Re: CPC web browser/Internet Applications
Post by: TFM on 20:39, 07 February 12
In General: AmsDOS shouldn't be moved to other ROMs than 7, because a lot of software relys on it being at 7 - especially games. And I really see no reason to move it to 4.

If you would move it up, it would make some sense in some special circumstances (more DOS ROMs f.e.). Ok.
But down??? That makes no sense at all.
Title: Re: CPC web browser/Internet Applications
Post by: Ynot.zer0 on 20:56, 07 February 12

There was an original posting that stated
1. Install the ROMs (any valid sockets)
Now I realise that this only meant the custom ROMs from rpalmer.
It wasn't all that clear.  Being someone that sometimes does non-CPC things during the day/night little details such as this sometimes get over looked.  I shall make a mental note so that I never forget it again (ha ha, we'll see how long that lasts).  Right back to trying to figure out why SDCC builds the .ASM files but pasmo doesn't seem to build valid .BIN files....

Quote from: TFM/FS on 20:39, 07 February 12
In General: AmsDOS shouldn't be moved to other ROMs than 7, because a lot of software relys on it being at 7 - especially games. And I really see no reason to move it to 4.

If you would move it up, it would make some sense in some special circumstances (more DOS ROMs f.e.). Ok.
But down??? That makes no sense at all.
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 02:35, 08 February 12
ynot.zer0,

I am glad it all works now.

You can try the other options such as clicking on a hyper link (you may ned to view the HTML to locate it, in future a hyperlink will be underlined, etc).
Also you might want to try the search feature.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: HAL6128 on 11:06, 08 February 12
I tried to follow the instruction as posted before. But in case of displaying only the proper output on ynot.zer0-post-picture the whole code with all stuff will be displayed.
"<html>
<head>
<title>Test2 Page for CPC Brower...."
What is wrong?
I'm using the same configuration (WinApe, ROMs etc...)
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 10:15, 09 February 12
hal 6128,

I cannot understand why you get a different result as opposed to the one shown by ynot.zer0.

The only time the result can be a dipslay of what is html is when the first byte of the loaded data is not a "<" character.

You can check this by examining the first byte of the first html block at &4000 with block &CE enabled in winape.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: MacDeath on 17:17, 09 February 12
QuoteIn General: AmsDOS shouldn't be moved to other ROMs than 7, because a lot of software relys on it being at 7 - especially games. And I really see no reason to move it to 4.
Well, if you are to use your CPC for some web-browsing action, I think you should simply get rid of all the superfluous stuff...
And not running game while Web-browsing may be a good point too.
:laugh:
[color=#0]
That's perhaps why I still think a PLUS cartridge is the best suitbla way to get it done properly.
You only put what is needed and used, no parasistic presence in ROM then perhaps.
[/color]
Title: Re: CPC web browser/Internet Applications
Post by: qbert on 11:13, 12 February 12
Well, the language itself is not too much complicated too my senses... XHTML 1.1 is quite straightforward after you have removed all the CSS specification for rendering (which we do not need!).
HTML 4.01 is a bit more ambiguous, by not following the XML syntax.
HTML < 4.01 is quite more dense because of the various layout option that were removed subsequently and integrated into CSS, but who care about HTML < 4.01 nowadays ?
I do suppose HTML 5 is not of our concerns, hopefully. :P ::)
Hopefully the Lynx (http://en.wikipedia.org/wiki/Lynx_(web_browser)) text browser is a long time known model, that is not too say you (we?) have to reach the same level of flexibility.
On a other hand, I have to remind that display speed is a major concern, as progressive display in a traditional browser (while downloading) is constantly revising layout (refreshing the screen !). As designed for generic computer terminals, Lynx is not constantly revising layout.






Quote from: TFM/FS on 18:04, 19 January 12


Well, a question for me would be if it is important to 'understand' the complete HTML language, or can you just work well with a subset of the HTML commands?

Is there a list of HTML commands in the net? I mean a list of important commands that should be implemented in any browser?
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 05:51, 11 March 12
hello everyone,

If anyone was expecting more frequenct updates, then i am sorry as I am working away from the my desktop PC which contains the master set of source files to build the browser and that I am also working in an environment where PC controls dont allow for various files to be passed between the work PC and non-work PCs. I am also unable to use a laptop in this work environment.

However, I have managed to get more HTML commands up and running. The command which have been tested are:

a. Handling of fonts like the system font and italics, the symbols font has yet to be defined and tested.
    The system font is expected to be the first and italics second.
b. Hyperlinks with an underline effect to indicate them in any font. A future version will allow the user to select the effect they desire.
c. Lists which can be unordered or ordered. The List data is auto-indented when mixed types are used.
    The auto-indent means that if an ordered list is displayed after an unordered list then the ordered list is shown 5 chars to the right of the unordered.
    The auto-indent does not check if the user tries to have more than 2 list types, so it is possible to cause issues when 3 or more types are attempted.
d. The italic font is selectable.
e. The <EM> emphasis command is available (this is displayed in inverse).
f. Various font effects are available (underline and strike). There may be more to be implemented to extend the HTML rendering of effects like bold, strong and font sizes.
g. An initial version of the user guide has been developed and will need some work to get it closer to being complete.

The various test files are on the dsk image.

My next task is to complete handling tables.

I have not yet updated the history/version info as the app is still being developed.

People can find the latest source and disk image to test the latest version in the attached files.

To start the CPCB.exe file see previous posts for help.

Regards
rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 23:12, 20 July 12
hello everyone,

It has been quite some time since I last posted to the wiki (this is due to a job contract forcing me away from my computer for a long time).

But anyways, while i was away i had been continuing to develop more options into the CPC browser via a laptop.

I have done some preliminary work getting the tables, forms and frames to be incorporated but have not tested them.

The attached zip file is only a development version of the source which has yet to be tested, so if you wish to download to see what has been done then by all means go ahead. It should be compilable (but as always I am human and so errors may have crept in).

It is hoped that soon I will have the browser working with all of the HTML 4.01 commands. However, there are some parameters to the commands which I have not implemented as at the moment I just want to get a workable version up and running.

The browser will not yet have the capability to access the internet, but if all of the local files demonstrate the HTML 4.01 command set then it is only a small step to finish the routines to access the TCP/IP API to access the internet.

The TCP/IP API is also still under development and I have built a windows server where i will create a local network to simulate the internet in regards to files one would normally access using the real network interface.
Title: Re: CPC web browser/Internet Applications
Post by: TFM on 05:52, 21 July 12
Great to see, that this project continues  :) :) :)
Title: Re: CPC web browser/Internet Applications
Post by: Gryzor on 13:12, 10 August 12
Wot, no HTML5?


Can't check it now, but really nice to see the project goes on... :)
Title: Re: CPC web browser/Internet Applications
Post by: rpalmer on 04:44, 16 August 12
Gryzor,

It may be possible to implement some of HTML 5, but I have yet to get past HTML 4.... so please wait I can see what I can do once HTML 4 is working.

rpalmer
Title: Re: CPC web browser/Internet Applications
Post by: Gryzor on 12:25, 17 August 12
Was only kidding, mate, it's awesome as it is, I'm not really expecting to be able to run a js CPC emulator on it or anything!
Title: Re: CPC web browser/Internet Applications
Post by: zhulien on 13:11, 17 March 20
Whatever happened to this thread?
Title: Re: CPC web browser/Internet Applications
Post by: GUNHED on 13:37, 17 March 20
It's a pity to see that the net evolves in a way off the html and java. Because this project contains lot of great and innovative work.


If you would start some kind of web browser / internet apps today, would you choose other 'languages' or still stick with html?
Title: Re: CPC web browser/Internet Applications
Post by: SkulleateR on 16:21, 17 March 20
Would be nice to see some basic web browser for M4/WiFi nowadays  ;D 8)
Title: Re: CPC web browser/Internet Applications
Post by: zhulien on 13:26, 18 March 20
Aside from me being quite busy and I am sure everyone else is too ( http://8bitology.net/8bml.php and POC with Logic here https://jsfiddle.net/zhulien/dw1zpgs2/ - the logic can be converted directly to Z80 by hand as it is executing on the right lower window).  This website with the provided libraries will work fine on CPC rendered as 8BML or on every other browser - it caters for different resolutions, they could be dynamically resized Windows if it was Symbos for example.  Anyone want to create an 8BML to flat array translater and also a flat array to Window renderer?  Note: the entire site of 8bitology including the members area is fully 8BML compatible, allows for forms, tables, theoretically images (although a bit more tweaking likely here to cater for them in a more universal way)...


Here is the 8bml page in... 8bml:   http://8bitology.net/8bml.php?8bml=
Powered by SMFPacks Menu Editor Mod