Jump to content
tschak909

Want help: Fold RunCPM Emulation into #FujiNet

Recommended Posts

This actually looks pretty straightforward, am taking a whack at it... The original developer did a very good job abstracting I/O.

 

Also from what I see here, the CPU emulation runs at the full speed of the host processor, which, given the ESP32...is...a lot faster than a 4MHz Z80. ;)

 

-Thom

 

Share this post


Link to post
Share on other sites

Initially posted this to @coredev, but I think it's publicly relevant:

 

---

 

@coredev looks like cp/m will be pretty easy to at least do initial bring-up.

all I/O functions are abstracted, and an Arduino abstraction was done.

Plan is:

1. get it into code base, get it built correctly.
2. write enough of abstractions to get a CCP prompt up and accept input.
3. make enough of atari sio device so that DT80 cartridge can put the FujiNet into CP/M mode and go.
4. Get filesystem working at least on SD card, if not also over TNFS (this is at least ponderable because @Oscar Fowler (jamm) did the time and effort to make consistent filesystem objects.

Filesystem I/O is extremely easy, because ABSOLUTELY NO DISK IMAGES ARE INVOLVED. THANK FUCK CHRIST. Everything is done in folders, one folder for each drive, and up to 15 folders in each drive for one of the user areas. Brain dead simple. 

And from the Atari side, also simple, because all we have to do is send a SIO command to device 0x5A and we can immediately send the main loop into its own thing (like we do for SIO2BT and MidiMaze), where we set the serial baud rate to 9600 baud, and go. (We can also add a command into the modem code that jumps into it as well, ATCPM)  

The printer and modem code can be integrated as well, and this can serve as a sign-post for what would need to be done for other platforms.

I rather like the thought of being able to run WordStar on my Atari again, it was my primary writing implement for a long time. 

 

---

 

  • Like 1

Share this post


Link to post
Share on other sites

I can't code to save my life, but you if need any testing done...  Also this project is of significant interest to me, I hope you get it to work.

Share this post


Link to post
Share on other sites

Yes. this is part of why I am doing the initialization I mention above, it's what the DT80 cartridge does to initiate ATRMON on the ATR8000.

 

I am hoping I can put together a functional 80 column terminal so you don't need a DT80 cart, but this will at least allow me to get it brought up.

 

Building an 80 column display is at least doable enough that the typical trick of putting two characters into a MODE F byte will work here.

 

Going the flickerterm route may be interesting as well, as I understand it, it's using a 5x8 font that is being written to across two mode F pages with even/odd columns slightly overlapping, and using the VBI to flip between the pages... It definitely results in larger text, if a bit flickery.

 

-Thom

 

  • Like 1

Share this post


Link to post
Share on other sites

Since I don't have a VBXE, that will have to be done by someone who...has...a VBXE :)

 

Good thing, any terminal I put together will have source code. :)

 

-Thom

 

Share this post


Link to post
Share on other sites

any terminal will do, you could even do sliding window 40 column to get by until a proper display is made...

I had used a handful of terminals with the atr8000 back in the day. Also with the indus, there's a terminal in recent times rolled out for the indus that might adapt as well..

also consider ice T XE, a possibly custom terminal, could even push it to the XEP80 like bobterm does as a start...

rudimentary graphics terminals would be possible, but none of that matters atm until it's alive and breathing on the fujinet and we know what it's like and what you have to deal with...

depending on the speed of the actual communication over the sio as well as the methods employed- a vidtex like display might be possible with bursts jamming the data to it.

You've got two already established systems between the ATR8000 and the indus but no one says you have to use their protocols, the command to start the connection might be the same but your' own custom display is possible. A TermCap basic terminal display is one thing, but cp/m/s100/et al. machines also had vidtex, proprietary video cards, cga, and vga as time progressed. You can do whatever you like, however, in order use off the shelf software and stuff in the future might  require a walk down some of the relevant repositories thus shedding some light on it. Thankfully such changes in cp/m systems aren't a big deal. It will be nice to have some of the old favorites at our fingertips again without causing the lights to dim in the house :)

Last time I moved my old CP/M s100 and drives I need two people to do it, would have been better to have a third 😮

 

wow!

Edited by _The Doctor__
  • Like 1

Share this post


Link to post
Share on other sites
42 minutes ago, _The Doctor__ said:

any terminal will do, you could even do sliding window 40 column to get by until a proper display is made...

I had used a handful of terminals with the atr8000 back in the day. Also with the indus, there's a terminal in recent times rolled out for the indus that might adapt as well..

also consider ice T XE, a possibly custom terminal, could even push it to the XEP80 like bobterm does as a start...

rudimentary graphics terminals would be possible, but none of that matters atm until it's alive and breathing on the fujinet and we know what it's like and what you have to deal with...

depending on the speed of the actual communication over the sio as well as the methods employed- a vidtex like display might be possible with bursts jamming the data to it.

You've got two already established systems between the ATR8000 and the indus but no one says you have to use their protocols, the command to start the connection might be the same but your' own custom display is possible. A TermCap basic terminal display is one thing, but cp/m/s100/et al. machines also had vidtex, proprietary video cards, cga, and vga as time progressed. You can do whatever you like, however, in order use off the shelf software and stuff in the future might  require a walk down some of the relevant repositories thus shedding some light on it. Thankfully such changes in cp/m systems aren't a big deal. It will be nice to have some of the old favorites at our fingertips again without causing the lights to dim in the house :)

Last time I moved my old CP/M s100 and drives I need two people to do it, would have been better to have a third 😮

 

wow!

Yeah, this isn't hard at all, I'm just using DT-80 so I don't have to write one while I bring this damned thing up. :)

-Thom

 

Share this post


Link to post
Share on other sites

With help from the ESP32 forum, figured out the issue (huge static variable being declared multiple times due to unusual way header was being included), was able to work through the problem.

 

#Atari8bit #FujiNet RunCPM functionality coming along, terminal functions working nominally. Now just need to implement disk abstraction functions. Stay tuned.

 

WIN_20210115_20_51_41_Pro.thumb.jpg.fdce96be687ff15e02999305af3df2e1.jpg

  • Like 6

Share this post


Link to post
Share on other sites

I have been working on folding in #RunCPM in order to add support for running #CPM software on a #FujiNet equipped #Atari8bit, ultimate goal is to integrate printer, modem, and networking functions.  

 

  • Like 5
  • Thanks 1

Share this post


Link to post
Share on other sites

#Atari8bit #FujiNet It is also possible to jump into CP/M via the MODEM emulation. So you can use your favorite terminal program, shown here with ICE-T, which provides VT100 emulation:

WIN_20210117_22_18_36_Pro.thumb.jpg.113b5e1eebcc89244e3b85d68b22f7a1.jpg

 

WIN_20210117_22_19_09_Pro.thumb.jpg.5a4c6cba5099a7e1dfa35b38bd866675.jpg

 

-Thom

 

  • Like 3

Share this post


Link to post
Share on other sites

Printer emulation is coming shortly. I have to fix one naggling bug (the port isn't closing), but anything that goes to the standard list device (LST:) will wind up going to the currently selected #FujiNet printer.

 

-Thom

 

Share this post


Link to post
Share on other sites

Nice! Please see my topic about GSX.

This may be possible over divisor zero SIO.

This is how GEM works on the ST.

Please check it out.

Thanks.

 

Share this post


Link to post
Share on other sites

#Atari8bit Shown here, WordStar 4 in #FujiNet #RunCPM support, printing a 31 page document to the virtual Epson FX-80 (PDF), picking it up in the web admin, it just works.

doc1.thumb.png.0226b096270315a2c7f319db41ea9194.pngdoc2.thumb.png.dfb9742c3135cf3830cdc0ef343dfffe.png

WIN_20210118_14_11_09_Pro.thumb.jpg.9c93d3a0f373d36deda3af8d52d12eda.jpg

 

  • Like 5

Share this post


Link to post
Share on other sites

@tschak909This is beautiful. I love WordStar. My question is (and I may have asked b4 [I am VERY forgetful]): Can I print from WordStar (or an Atari program) to a normal Windows network printer DIRECTLY w/o using .pdf?

Example hp OfficeJet Pro 7740

I hope this can be done. Just set a default printer on your network and change if necessary.

That would be great.

 

Share this post


Link to post
Share on other sites
2 minutes ago, Kyle22 said:

@tschak909This is beautiful. I love WordStar. My question is (and I may have asked b4 [I am VERY forgetful]): Can I print from WordStar (or an Atari program) to a normal Windows network printer DIRECTLY w/o using .pdf?

Example hp OfficeJet Pro 7740

I hope this can be done. Just set a default printer on your network and change if necessary.

That would be great.

 

You have asked before, and because direct networking support is an absolute nightmare, it's not going to happen from my side.

 

-Thom

Share this post


Link to post
Share on other sites

Here is me playing Sargon 2.1 on CP/M.

94871be905000318ac55548a99f0c005.jpg

I also managed to get a version of EMACS running as well as Supercalc. Very cool.


Sent from my iPhone using Tapatalk

  • Like 5

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...