Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

CP/M web browser

1,067 views
Skip to first unread message

Zhu Feng

unread,
May 26, 2012, 11:21:52 PM5/26/12
to
Does any 1 know where to download a CP/M web browser that support Javascript?

Peter Dassow

unread,
May 27, 2012, 7:21:10 AM5/27/12
to
On 27.05.2012 05:21, Zhu Feng wrote:
> Does any 1 know where to download a CP/M web browser that support
> Javascript?

Do you have smoked something extraordinary ?
CP/M-80 does have only 60KB memory TPA (best case).
CP/M-86 works only with 64KB chunks, code and data can be separated.
So what do you think is possible ?
May be a HTML parser and converter is possible, but Javascript for sure NOT.
Even the Arachne Browser (most advanced browser for DOS) is not able to
support Javascript.
And you forgot also, that a TCP/IP stack will consume a lot of memory
too (I guess about 30-40KB).
So just forget it.

Regards
Peter

dott.Piergiorgio

unread,
May 27, 2012, 7:37:32 AM5/27/12
to
pls don't feed the (really obvious) troll.....

Best regards from Italy,
dott. Piergiorgio.

Roy

unread,
May 27, 2012, 10:20:48 PM5/27/12
to
let someone port contiki web browser to CP/M then, but still no
Javascript.

>
> Regards
>   Peter

Henk Siewert

unread,
May 28, 2012, 4:42:29 AM5/28/12
to
Hallo,

Javascript? Please don't.
That's where the www took the wrong turn.
As I can remember the www was meant to be a means to exchange documents by
offering hyperlinks to download these documents.
When graphic browsers became available (Mosaic) the www started to become
something else.
Whit the introduction of scripts all hell broke loose.
But is it not possible to make a basic hyperlink system? Something like the
CP/M 3 help file system?

Henk Siewert

PS. I give up smoking a long time ago.

"Peter Dassow" <z8...@arcor.de> schreef in bericht
news:4fc20e27$0$6581$9b4e...@newsspool3.arcor-online.net...

Bill Leary

unread,
May 28, 2012, 10:10:23 AM5/28/12
to
"Peter Dassow" wrote in message
news:4fc20e27$0$6581$9b4e...@newsspool3.arcor-online.net...
> ((..omitted..))
> Did you have smoked something extraordinary ?
> CP/M-86 works only with 64KB chunks, code and data can be separated.

I'm not sure about that. I programmed a project on CP/M-86 and my (now
distant) recollection is that the executable was something over 300K. The
compiler/linker package had all kinds of selections. One of them was 64K
total. Another was 64K code / 64K data as you say. But there were a lot of
other combinations using longer pointers (segment/offset) that could use all
of the memory, exclusive of the OS, that the machine had.

- Bill

Axel Berger

unread,
May 28, 2012, 9:33:00 AM5/28/12
to
Henk Siewert wrote on Mon, 12-05-28 10:42:
>That's where the www took the wrong turn.

To my mind the main mistake was when browser did not say "syntax error"
but started guessing. I can't open half the sites out there any more,
and NOT because my rather new browser doesn't support any new and
documented, even experimantal, features but because the newer ones
(requiring another OS, requiring more powerful hardware, requiring lots
of money) are even more bloated and and correct even more of what by
any measure are nothing but blatant mistakes.

If you pander to the great unwashed, their standards are what you're
going to get. But then, with social security at unpredented heights,
that's where the money is.

Peter Dassow

unread,
May 28, 2012, 2:36:56 PM5/28/12
to
Bill,

AFAIK CP/M-86 does NOT use x86 protected mode (which would support
addressing linear memory access), instead, just "real mode" like DOS
(without any "extended" or "xms" memory driver).
So I am very sure about this, CP/M-86 does only support small, medium or
compact memory models (read more about this in any compiler manual).
Large an Huge were NEVER supported by CP/M-86 compilers.
If programs are bigger than 64KB, this is no rocket science.
You could store more than 64KB in a file, but you will read just 64KB
chunks in memory at once.
Think about "bank switching" in CP/M 3.0 ... not the same, but similar.

Regards
Peter

glen herrmannsfeldt

unread,
May 28, 2012, 4:05:37 PM5/28/12
to
Peter Dassow <z8...@arcor.de> wrote:
> On 28.05.2012 16:10, Bill Leary wrote:
>> "Peter Dassow" wrote in message
>> news:4fc20e27$0$6581$9b4e...@newsspool3.arcor-online.net...
>>> ((..omitted..))
>>> Did you have smoked something extraordinary ?
>>> CP/M-86 works only with 64KB chunks, code and data can be separated.

(snip)

> AFAIK CP/M-86 does NOT use x86 protected mode (which would support
> addressing linear memory access), instead, just "real mode" like DOS
> (without any "extended" or "xms" memory driver).
> So I am very sure about this, CP/M-86 does only support small, medium or
> compact memory models (read more about this in any compiler manual).
> Large an Huge were NEVER supported by CP/M-86 compilers.
> If programs are bigger than 64KB, this is no rocket science.
> You could store more than 64KB in a file, but you will read just 64KB
> chunks in memory at once.

That means that the program has to do all the work, without any
help from the OS. Not so different from the DOS extenders using
protected mode in real mode DOS.

Not so different from DOS COM files, (which I believe descended
from CP/M and such). Again, the system didn't provide any help
for accessing more memory, but programs could still do it.

> Think about "bank switching" in CP/M 3.0 ... not the same, but similar.

Well, EMS is pretty much bank switching, which was used for some
time for DOS programs needing more memory. Usually only for data,
and not programs, but I believe you could also execute in EMS.

-- glen

Bill Leary

unread,
May 28, 2012, 5:38:35 PM5/28/12
to
"Peter Dassow" wrote in message
news:4fc3c5c8$0$6547$9b4e...@newsspool4.arcor-online.net...
Peter:

I suspect you're correct.

You motivated me to go down to the cellar and dig out my design notes from
long ago. I had not recalled that the program did some serious arcana to
switch the machine into protected mode to run. It had it's own code to run
the display, keyboard, serial and parallel ports. It's even got it's own
real time clock interrupt handler. It switched back to real mode upon
exiting to do disk access to update it's data files. I can not recall for
sure after all this time why I thought it was necessary to do it this way.
There being a performance issue comes to mind, but I'm just not sure. It's
not in the notes. The code was mostly in C and used 32 bit pointers
(segment:offset). Given your comments above, I’m not sure how I did that.
Perhaps because the program was cross compiled on an MS-DOS machine the
running on the CP/M-86 machine. I also remember it wasn't a Microsoft C
compiler. The name Aztech or Aztek or something like that comes to mind.

- Bill

Bill Leary

unread,
May 28, 2012, 7:05:26 PM5/28/12
to
I should have kept reading my notes.

I said:

"Bill Leary" wrote in message
news:75OdnUs4L_TGbV7S...@giganews.com...
> I had not recalled that the program did some serious arcana to switch the
> machine into protected mode to run. It had it's own code to run the
> display, keyboard, serial and parallel ports. It's even got it's own real
> time clock interrupt handler. It switched back to real mode upon exiting
> to do disk access to update it's data files.

But I didn't end up doing the application in protected mode. I'd worked out
the jump to/from protected before the customer informed me he still had 8086
machines. As best I can make out, I saved the segment registers, did
everything (interrupts, video, etc.) within my program with segment:offset
pointers, then restored the segment registers before making calls to CP/M-86
for disk access and exiting the program. I didn't note, and don't recall,
how I got it to load the 300+K program.

Not that any of this changes your point about compliant code size in
CP/M-86.

- Bill

James Moxham (Dr_Acula)

unread,
May 29, 2012, 5:43:46 AM5/29/12
to
quote: Does any 1 know where to download a CP/M web browser that
support Javascript?


What a crazy suggestion. But maybe not so crazy? I wish I had 6 months
where I could just stop working and not have to worry about driving
children to school and sport and spend the whole time coding! Ah,
luxury.

I've been playing around with the Propeller chip and some of the new
320x240 touchscreens that are available for $16 or so. They are full
color and by combining the propeller with some old-school HC161 chips
and a couple of ram chips for a 16 bit data bus it is possible to move
data from sram out to the display very fast. A screen refresh is 30ms.
We have a bitmap decoder and so it is possible to build up a screen
that looks like a web browser. Scroll bars, text boxes, radio and
checkboxes etc. Probably the only bit that is not so easy is
decoding .jpg files. .bmp are much simpler.

Now, fundamentally, there is no reason an 8080 or a Z80 running CP/M
can't send commands to the displays. There seems to be a fairly common
standard - 16 bit data bus, /wr, /rs and a reset line. An 82C55 should
handle that fine. In fact, an Z80 plus an 8255 could easily replace
the propeller chip.

You would need access to all the .bmp pictures on an SD card, but 4
pins from an 8255 can control an SD card and I think the N8VEM group
have some code that can handle the bit banging. One 8255 could do the
display plus touchscreen plus SD card.

I don't know about javascript. That might be taking things a bit far.
But I have tried parsing html and things are not too complicated if
you keep to simple commands like frames and text boxes and check
boxes. Scroll bars mean you can move around a larger page, and a
touchscreen is intuitive to use - touch the scrollbar and move it.

And given the display already needs 512k x 2 ram chips for picture
buffers you could borrow a bit of that for CP/M or MP/M. Maybe set one
MP/M user to handle all the graphics stuff in the background.

I think it would be quite a fun project. Just need more time!

Ivan Shmakov

unread,
May 29, 2012, 1:37:47 PM5/29/12
to
>>>>> Peter Dassow <z8...@arcor.de> writes:
>>>>> On 27.05.2012 05:21, Zhu Feng wrote:

>> Does any 1 know where to download a CP/M web browser that support
>> Javascript?

> Do you have smoked something extraordinary ?

> CP/M-80 does have only 60KB memory TPA (best case).

> CP/M-86 works only with 64KB chunks, code and data can be separated.

There was a mention of CP/M-68K not so long ago in this group.
Consider, e. g.:

--cut: news:slrnjbjlf...@stench.no.domain --
On 2011-11-08, Ivan Shmakov <oneing...@gmail.com> wrote:
>>>>>> Henk Siewert <s...@tiscali.nl> writes:
> > This machine is equipped with 1.5 Gigabyte RAM!
>
> Which, to the best of my knowledge, no system of the CP/M family
> could be made to recognize.

CP/M-68K could.
--cut: news:slrnjbjlf...@stench.no.domain --

(Also at [1].)

> So what do you think is possible ?

[...]

[1] http://groups.google.com/group/comp.os.cpm/msg/59887aa489e9db5b

--
FSF associate member #7257

Tarkin

unread,
Jun 3, 2012, 3:46:59 AM6/3/12
to
On May 29, 5:43 am, "James Moxham (Dr_Acula)"
JavaScript (more correctly, ECMAscript), simply cannot exist for CP/M
80.

While it might be possible for CP/M-86, consider:
SpiderMonkey, (one of) Mozilla Foundation's js engine(s), weighs in at
just less than one megabyte for the executable. And that's for Linux,
and
doesn't include the source for the engine or the Netscape Portable
Runtime
(NSPR) source on which SpiderMonkey relies.

So, while not impossible, I consider it fantastically improbable and
an
utter waste of time.

TTFN,
Tarkin

trevor

unread,
Jun 24, 2012, 9:23:42 AM6/24/12
to
On Sunday, May 27, 2012 4:21:52 AM UTC+1, Zhu Feng wrote:
> Does any 1 know where to download a CP/M web browser that support Javascript?

please help
can cpm be relocated in z80 ram to be above 32768 please
im asking as the sam coupe has external ram that can be paged here and this ram runs without video ram contention from the asic that controls the video modes like the spectrums ula
thank you

trevor

unread,
Jun 24, 2012, 9:24:35 AM6/24/12
to
On Sunday, May 27, 2012 4:21:52 AM UTC+1, Zhu Feng wrote:
> Does any 1 know where to download a CP/M web browser that support Javascript?

are there any plans to modify cpm to use mass storage devices for z80 based machines please?

David Griffith

unread,
Jun 24, 2012, 8:19:19 PM6/24/12
to
The GIDE hard drive interface has been around for several years and
works well.

--
David Griffith
davidmy...@acm.org <--- Put my last name where it belongs

Bill Marcum

unread,
Jun 25, 2012, 2:55:54 PM6/25/12
to
On 2012-06-24, trevor <roger...@gmail.com> wrote:
>
> please help
> can cpm be relocated in z80 ram to be above 32768 please
> im asking as the sam coupe has external ram that can be paged here and
> this ram runs without video ram contention from the asic that controls
> the video modes like the spectrums ula
> thank you

All programs would have to be recompiled, and would have to fit in 32k
or be rewritten to use bank switching.


--
Remember, root always has a loaded gun. Don't run around with it unless
you absolutely need it. -- Vineet Kumar

miste...@gmail.com

unread,
Dec 25, 2017, 2:35:47 AM12/25/17
to
What about using Goffer? There was a text only browser for DOS called Lynx ?

Stephen G7VFY

coinst...@gmail.com

unread,
Dec 26, 2017, 8:23:19 AM12/26/17
to
On Saturday, May 26, 2012 at 9:21:52 PM UTC-6, Zhu Feng wrote:
> Does any 1 know where to download a CP/M web browser that support Javascript?

Thanks for reviving this interesting discussion. I have designed a low-cost CP/M68K SBC that has a 16-meg SIMM module for memory:
https://www.retrobrewcomputers.org/doku.php?id=boards:sbc:tiny68k
I picked the SIMM module only because it is the cheapest memory solution for 68000. I didn't know what to do with all that memory so half of it is a 8-meg RAMdisk but I still have 7meg of TPA. A web brower for CP/M68K may be a way to utilize all that memory. Being new to CP/M and not much of a software programmer, I can only ask questions: How much memory does a web-brower need? Right now the SBC only have 2 serial ports and a realtime clock, what other hardware does a web brower really needs?

William Hicks

unread,
Jan 1, 2018, 10:28:44 AM1/1/18
to
On Monday, December 25, 2017 at 2:35:47 AM UTC-5, miste...@gmail.com wrote:
> What about using Goffer? There was a text only browser for DOS called Lynx ?
>
> Stephen G7VFY

I don't think it matters as much if it is CP/M as much as if it can run under a z80. If it can then CP/M is not a big deal. If you want to know if there is a z80 browser, that is possible. There is a "web browser" and a "web server" written for the Zx81 - if you can do it on that machine you should be able to on say a Kaypro

Bill

Steve Nickolas

unread,
Jan 2, 2018, 2:45:43 AM1/2/18
to
I think Lynx butts up pretty hard against the PC's 640K limit. I doubt it
could be made small enough to fit in the memory space of a Z80. :/

Can it be done under CP/M-86, though, possibly.

-uso.

jdhadd...@gmail.com

unread,
Jan 2, 2018, 8:48:27 PM1/2/18
to
An Apple II with Contiki browsing the web is pretty impressive, don't know if it's portable to Z80 though. I browse the web with CP/M using Kermit that's been modified for telnet and the Wiznet tcp/ip stack, it's fun.
0 new messages