News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_JohnElliott

JOYCE releases

Started by JohnElliott, 23:01, 03 August 22

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

JohnElliott

I should probably do a 'JOYCE releases' thread, since this seems to be where PCW interest is at these days.
JOYCE 2.5.0 has been released. The major new feature in this release is the ability to run CP/M-86 or CP/M 2 sessions within PCW CP/M. Maybe not particularly useful, but implementing it entertained me.


robcfg

Hi John!

I downloaded it on my MacOS Catalina machine and found that on PcwGuest.cxx line 469, on function yield, there's a call to a function which doesn't seem to exists on Macs, that is enabled because of HAVE_SCHED_H which seems to be always defined as 1.

So, I removed that and left the alternative SDL_Delay(0) and I managed to compile xjoyce and xanne and get them running.

void PcwGuest::yield()
{
#ifdef HAVE_SCHED_H
sched_yield();
#else
SDL_Delay(0);
#endif
}

Prodatron

Thanks a lot for the new release, John!

Btw there is a typo in the download link for the windows version.

Currently it is...
/Unix/Joyce/joycesetup.exe-2.5.0

but it should be...
/Unix/Joyce/joycesetup-2.5.0.exe

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

JohnElliott

Quote from: Prodatron on 13:14, 04 August 22Btw there is a typo in the download link for the windows version.

Currently it is...
/Unix/Joyce/joycesetup.exe-2.5.0

but it should be...
/Unix/Joyce/joycesetup-2.5.0.exe
Thanks - should be fixed now.

JohnElliott

Quote from: robcfg on 08:54, 04 August 22I downloaded it on my MacOS Catalina machine and found that on PcwGuest.cxx line 469, on function yield, there's a call to a function which doesn't seem to exists on Macs, that is enabled because of HAVE_SCHED_H which seems to be always defined as 1.

So, I removed that and left the alternative SDL_Delay(0) and I managed to compile xjoyce and xanne and get them running.
I've altered my copy of the configure script to check specificially for that function, so hopefully you won't encounter that problem in future releases.

robcfg

That's nice, thank you!

GeoffB17

Hm, interesting John.  One day, I might try this.

However, I actually have  original copy of IBM's version of CP/M-86, complete with the 5.25" SSDD boot disk, and IBM quality manual.   I've had it working on my old 386sx machine, and it works fine.  According to the docs, it should work with an appropriate format DS disk, and I was trying to make one (using 22DISK) but I don't think I got that sorted.

Just had the standard utils on the SS disk.  Don't know if there was anything else about that was worth having?

Geoff

GeoffB17

If I was wanting to play with CP/M-86, the storage situation would be a massive help with the Joyce variant.

I've looked again at my IBM version, and this must be a very early release and I think there is no support for any sort of HD.   It might support a B: drive, but 5.25 only.

Back when I was playing with it, it seems that I DID get a DS disk to work as A: once the system was booted, but when I tried to get a 3.5" disk (DSDD, not HD at that time) to work as B: this refused, and that machine I was using has a 5.25" A: and a 3.5" B:.   So I'd be stuck with A: only, 180k total as boot, 360k once booted and disk swapped.  And those capacities will be reduced by system tracks etc.

Well, sort of comparable with the PCW I guess.

Geoff

JohnElliott

These days there is a patch (144FEAT) that lets IBM CP/M-86 use bigger floppies, but the storage situation (and in particular the lack of reliable tools for getting files in and out of a CP/M-86 environment) was why I wanted to add the feature to JOYCE, where I have IMPORT / EXPORT and a bunch of emulated hard drives with all the tools I want on them.

JohnElliott

I've just uploaded JOYCE-2.5.2. This version is mainly to incorporate what I've learned about LocoLink since the previous release. In particular, there's now an internal LocoLink server that can expose a directory on the host system to Rosanne, and (at least in the Linux build) I've got LocoLink working reasonably reliably between JOYCE and ANNE.

There's also an experimental video driver (JFASTCRT) which tries to implement text drawing on the PCW's screen in native code, in the hope that that might be faster. (It also optionally accepts colour control codes, so that a command like PALETTE 4 40 really does change the screen colours to yellow on green. It's optional because there are PCW programs that do the equivalent of PALETTE 0 1 and dark blue on black isn't very easy to read).

McArti0

F9 didn't work for me  :-X Help...
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

JohnElliott

I haven't changed that part of the code, and it worked when I tested it, so I don't know why it wouldn't work for you. If you've got a Menu key does that work?

McArti0

I've tried turning on Joyce before. F9 never worked for me. I guess I don't know something. ::)
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

McArti0

I have not disk start? 8)
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

JohnElliott

If you start it up and it gives you the "No JOYCE boot discs have been set up" message:


 



Then you will need to follow the steps in the menu to add at least one. Once you've done that you'll arrive at the boot menu and can either start from one of the discs or bring up the f9 menu.

JohnElliott

I've now released JOYCE 2.5.3. This emulates another proprietary communications interface: the PCW Linkit.

The Linux build also has another pointless feature that amused me: You can now use JOYCE as a terminal to your system's command line, so you can use MAIL232 (or other PCW terminal program of your choice) in the same way that you would an xterm.


robcfg

I managed to get it working on MacOS Sonoma by just adding
#include <unistd.h>to pcwlinkit.c, and
#include <libgen.h>to lllinkit.c

Where do I get MAIL232 and how do I make it work as the terminal?

JTN

Quote from: JohnElliott on 12:43, 26 March 24You can now use JOYCE as a terminal to your system's command line
Tee hee.
Quote from: robcfg on 18:58, 26 March 24Where do I get MAIL232 and how do I make it work as the terminal?
MAIL232.COM is on side 1 (LocoScript 1) of the PCW8xxx system discs. (Looks like it lives on the same disc as the rest of CP/M on the 9512; I haven't checked the 3.5" models.)
The Joyce 2.5.3 manual explains how to configure Joyce so that the emulated CPS8256 serial port connects to a shell (basically, configure it to point to /dev/ptmx). Faffing with terminal modes (e.g. echo) so that it's actually comfortable is left as an exercise for the reader.

robcfg

@JTN , thanks for your help!

@JohnElliott , It also works on MacOS  :D

The Cow has spoken!  ;D

JohnElliott

Interesting that your MAIL232 is an older version than mine. I wonder what the difference is?

I tidied up the prompt for my screenshot by adding a "vt52" case to my .cshrc (I use tcsh):

switch ($TERM)
    case "vt52":
        set prompt="\n[%n@%m %c]> "
        breaksw
    case "xterm*":
        set prompt="\n%{\033]0;%n@%m:%~\007%}%{\033[36m%}[%{\033[1;36m%}%n%{\033[0;36m%}@%{\033[1;36m%}%m %{\033[1;32m%}%c%{\033[0;36m%}]>%{\033[0m%} "
        breaksw
    default:
        set prompt="\n%{\033[36m%}[%{\033[1;36m%}%n%{\033[0;36m%}@%{\033[1;36m%}%m %{\033[1;32m%}%c%{\033[0;36m%}]>%{\033[0m%} "
        breaksw
endsw

robcfg

I did that on my .zshrc file, but despite changing the prompt, I still get a lot of unwanted characters.

Not that it's really a problem, but good to know.

Powered by SMFPacks Menu Editor Mod