News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Prodatron

SymbOS 3.1 released

Started by Prodatron, 23:32, 30 December 21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

eto

I will give it a try later today. I like the idea to have a minimal set (64KB) to put it onto a multi-rom cartridge, but I also like the idea to have a full blown 512K cartridge with all the extras. 

Prodatron

Here you have both:

symbos.cpr
- is the 80K version, which only boots the core part of SymbOS from catridge

symbos-full.cpr
- is a 512K cpr, which contains a 432K sized FAT12 image at blocks 5-31 as well. During booting SymbOS will detect this "rom disc" and handle it as a read-only mass storage device, using a new rom disc driver. It makes sense, if you have no other mass storage device connected and want to try and play a little bit with SymbOS.

You cannot view this attachment.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

GUNHED

The internal ROM drive is a nice idea.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

#53
ROM disc in graduate format or another format?  Perhaps it could scan all ROMS for a disc in a Symbos format, I'm not sure we will lose that much by not being able to copy stuff from the graduate format... unless one day we finish a CP/M console for Symbos.

eto

Feedback from tests with a real Plus (6128, no expansions): I tried all CPR with a C4CPC and none of them worked.

When loading them with the CPRSelect tool I always get the loading screen with the progress bar but after that it stops.

When putting the CPRs in their own slot, they don't start up at all.

Prodatron

@eto, thanks for testing! hope, it's only a format issue. Maybe I can upload another version or dig out my own CPC Plus.

@zhulien, it is using FAT12 (see screenshot). It is much more powerful than CP/M, supports sub directories, timestamps, exact file lenghts etc. and still is compact and doesn't waste too much space on disc. That's the perfect format for a SymbOS rom/ram disc.
I am using a 720KB DSK disc image, which is common for the MSX, modify the boot sector, so that it only has a capacity of 432K, edit it with a japanese tool called "editdisc", and then merge it into the CPR file with a python script.

Anyway it sucks, that it doesn't work on a real machine. Hope I can fix this soon.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

eto

I also tried it with RetroVirtualMachine and it doesn't work there either. 

(In Winape it does boot though)

Prodatron

Thanks for the hint with RetroVirtualMachine! That will help for testing.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

Prodatron

Forgot to switch the Z80 into IM 1 mode.
This new version is now working in RVM, too.

You cannot view this attachment.

So I found a bug in WinApe ;D
WinApe always starts the Z80 in IM 1 mode instead of IM 0.

Now I hope, that it will work on a real machine as well?  :-[

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

PulkoMandy

Works for me on real hardware. But the System control panel says my system is a CPC 464 instead of a 6128+. And it only sees 1MB of RAM whrn I have 2  :D (and also an Albireo and a Nova, I see it doesn't use the Nova RTC to get the current time)

Other than that everything seems to work!

Prodatron

Thanks a lot for testing!
- CPC464 -> without any CPC-OS rom it can't read the computer type ID (0-4) at #C002. I should find another way to find out, if the machine is a Plus or not.
- 1MB -> SymbOS is limited to 20bit addresses, so currently 1MB is the maximum unfortunately.
- Nova RTC -> strange, it should work in this version. Have to check this.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

pollito

Quote from: zhulien on 18:25, 09 March 23@Prodatron I believe almost all that is met, still trying to find out how the memory mapping works as it is an eZ80 - but still can run CP/M Z80 stuff.

I am still a CPC user, but lots of people aren't and I beleive Symbos is the best Z80 OS by far - and multiplatform.  If it could work on the Agon Light, the audience for Symbos would be greatly expanded and therefore 'hopefully' more Symbos software would be created.
I second this. I would love to see SymbOS running on my Agon Light. It's already got a large, and evergrowing audience, and I think it would see the OS get the recognition it truly deserves!

Prodatron

Quote from: pollito on 19:03, 07 May 23
Quote from: zhulien on 18:25, 09 March 23@Prodatron I believe almost all that is met, still trying to find out how the memory mapping works as it is an eZ80 - but still can run CP/M Z80 stuff.

I am still a CPC user, but lots of people aren't and I beleive Symbos is the best Z80 OS by far - and multiplatform.  If it could work on the Agon Light, the audience for Symbos would be greatly expanded and therefore 'hopefully' more Symbos software would be created.
I second this. I would love to see SymbOS running on my Agon Light. It's already got a large, and evergrowing audience, and I think it would see the OS get the recognition it truly deserves!
Thanks, that's indeed an interesting platform.
I wonder, if it has an additional MMU. The eZ80 can run in Z80 or in ADL mode (24bit registers). In Z80 mode you can only swap between complete 64K pages with the MBASE register. That's fine for SymbOS applications, but huge parts of the SymbOS core itself would have to be rewritten to work in ADL mode, so that it can access the whole memory. Currently this is done by swapping 16K blocks into the visible 64K area, but that isn't possible with a standard eZ80.


GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

zhulien

@Prodatron

"The eZ80 has 16K of internal CPU RAM that can be configured to be ever-present at the top of the 16 bit 64K addressable range when in Z80-compatible mode. You can configure the eZ80 to use either 16K or 8K of its internal RAM to be the common memory. So for CP/M Plus or MP/M, this means the User Bank size would be 48K or 56K. Bank-switching is insanely quick. All it takes is writing one byte to an internal register, just 2 T states or 40 ns.This comes not just from reading the documentation; I have actually coded this up and it works great."

from here:  https://groups.google.com/g/comp.os.cpm/c/E7BsAckwqTU

and

"Julian Cassin
hi, does anybody know if the Agon Light can run in eZ80's ADL mode?

Igor Chaves Cananea
Group expert
Top contributor
You can write programs that run in ADL mode, yes."

from here: https://www.facebook.com/groups/agoncomputer/permalink/1216531869048193/?comment_id=1216533392381374&notif_id=1683555027205996&notif_t=group_comment&ref=notif

leexus

Quote from: PulkoMandy on 20:42, 05 May 23Works for me on real hardware. But the System control panel says my system is a CPC 464 instead of a 6128+. And it only sees 1MB of RAM whrn I have 2  :D (and also an Albireo and a Nova, I see it doesn't use the Nova RTC to get the current time)

Other than that everything seems to work!
I have an Azerty cpc 6128+ and Symbos 3.1 says its a CPC6128+ with. System is booted from original Burning rubber cartridge.

eto

Quote from: leexus on 05:33, 09 May 23I have an Azerty cpc 6128+ and Symbos 3.1 says its a CPC6128+ with. System is booted from original Burning rubber cartridge.
In your case, AMSDOS, Firmware and BASIC 1.1 is present. The other case was, that the SymbOS cartridge is used without any AMSDOS, Firmware or BASIC 1.1 being available to the system. 

Prodatron

@zhulien , thanks a lot for this info! I will check this.
@leexus , yes, Eto is right, in your case the original ROM is still present, so proper detection is possible.

Thanks to Etos idea of having SymbOS in a CPR/catridge I am currently playing around with the ZX0 compressor, which is just crazy. It is much better than ZIP, but it still has an ultra fast and small Z80 decompressor.
Next version will use it for crunched SymbOS executable files: Most of them will be less than half of the original size. E.g. for a CPR that makes it possible to include much more apps.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

zhulien

@Prodatron with Symbos Icons, is there any way to associate a type of program or file with a parent so that they can adopt that icon and launch it?  Like Windows 3.1?  For example, (see PRIMAL thread), Let's say we adopt an extension to an application that is for PRIMAL, e.g. PML - if someone looks at MYAPP.PML can they see the icon from PRIMAL.COM and if they run it have the MYAPP.PML passed to PRIMAL.COM via the commandline so that it can load MYAPP.PML?  (PRIMAL.COM is currently a console application for Symbos)

Prodatron

#68
Of course, SymbOS supports file extension associations to apps since the beginning.

Open "Control Panel -> System -> File Types" to edit the definitions.

You cannot view this attachment.


Then you can call a file directly, which will then open the associated application and load the file.

You cannot view this attachment.

You cannot view this attachment.

You can also create icons for media files, which will then be opened with the associated application.

You cannot view this attachment.

You cannot view this attachment.


Is it that, what you are requesting?

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

zhulien

Perfect!  It means my PRIMAL wrapper (hopefully) can contain the ICON for the PRI applications associated with the wrapper.

Looking through the Symbos documentation, I couldn't find a non-blocking CharIn, is there one?

Also for RAM, If I was to reserve RAM in the header so it's allocated upon program load, how do i get the address of that allocated RAM?

Prodatron

Quote from: zhulien on 22:18, 10 May 23Also for RAM, If I was to reserve RAM in the header so it's allocated upon program load, how do i get the address of that allocated RAM?

It's always located directly behind the code/data/transfer area of the application.
If your code area has a size of 8888 bytes, the additional memory for the code area will start behind byte 8888 of the code area.

Ops, sorry for not answering your CharIn question. I will write in the other thread.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

zhulien

@Prodatron The LIB folder for Symbos development which includes Symbos-Constant.asm, Macros.asm, DesktopManager.asm, FileManager.asm, Kernel.asm, MSX-compatibility.asm, NetworkDaemon.asm, SymShell.asm, SystemManager.asm and ScreenSaver_Template.asm...

Can I include these in a public github project and if so, what accreditation would you like me to attach?

Prodatron

Quote from: zhulien on 19:29, 11 May 23@Prodatron The LIB folder for Symbos development which includes Symbos-Constant.asm, Macros.asm, DesktopManager.asm, FileManager.asm, Kernel.asm, MSX-compatibility.asm, NetworkDaemon.asm, SymShell.asm, SystemManager.asm and ScreenSaver_Template.asm...

Can I include these in a public github project and if so, what accreditation would you like me to attach?
Yes, no problem, feel free to upload them in the github project. I am always glad, if this stuff helps!

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

zhulien

Yes, no problem, feel free to upload them in the github project. I am always glad, if this stuff helps!

Quote from: Prodatron on 14:07, 12 May 23
Quote from: zhulien on 19:29, 11 May 23@Prodatron The LIB folder for Symbos development which includes Symbos-Constant.asm, Macros.asm, DesktopManager.asm, FileManager.asm, Kernel.asm, MSX-compatibility.asm, NetworkDaemon.asm, SymShell.asm, SystemManager.asm and ScreenSaver_Template.asm...

Can I include these in a public github project and if so, what accreditation would you like me to attach?
Yes, no problem, feel free to upload them in the github project. I am always glad, if this stuff helps!
Many thanks!

Prodatron

#74
Quote from: Prodatron on 21:21, 09 May 23Thanks to Etos idea of having SymbOS in a CPR/catridge I am currently playing around with the ZX0 compressor
Here is a new version of the CPR file for booting SymbOS 4.0 (very early version) on a CPC Plus with a "full equipped ROM disc". Thanks to the ZX0 compressor support it's now possible to place most of the standard SymbOS apps, additional media files and even more inside the 512KB space of the catridge as most files are 50% or less of their original size now. Even music files etc.
CPC 6128+ detection is working again.

You cannot view this attachment.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

Powered by SMFPacks Menu Editor Mod