News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_TFM

FutureOS corner

Started by TFM, 05:12, 01 October 10

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

GUNHED

Quote from: XeNoMoRPH on 19:27, 11 May 21
What picture ?  :o
Well, if you go to futureos.de - that picture is old, was planned as place holder. But I'm not good at all in GFX, so I would need something.


Your picture was the one with FutureOS GUI, wallpaper and text "FutureOS" - which look great!!
You used it for your article.


This one...


http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

ComSoft6128

#751
Have a look at the images here:


https://pixabay.com/illustrations/man-muscular-robot-cyborg-android-320276/


"1,911 Free images of Robots"


And a few other other things too :)

GUNHED

Thanks for the hint. Well, I thought about something just for the upper side of the homepage. Maybe just some words, but I'm bad at GFX. And of course it should be somehow CPC related. Prodi got a nice banner for SymbOS, but it's a bit small. Something like that. Not too space consuming.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

GUNHED

Somehow this is fun, but totally off-topic...  :laugh:



http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

GUNHED

http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

GUNHED

WIP... Every color change represents a switch from task to the next task.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

ervin

We definitely need the Like button back!

GUNHED

Quote from: ervin on 00:41, 08 October 21
We definitely need the Like button back!
Like+++
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

GUNHED

So far there are two mode a task can operate:
1. Background task: It can reserve parts of the screen an use it
2. Foreground task: It get the complete screen

So switching between foreground task is like switching screens

Windows don't get used, because they only bring chaos and I don't see advantages of them at all. If you do, please let me know.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

#759
How is memory management on FutureOS internally? 


Could you for example, malloc 2kb or 16kb blocks?  2kb for a textscreen and 16kb for graphics.  Then tasks could allocate one or the other and when they output it goes to the appropriate memory.  You could then choose to have 1 visible screen at any time (eg, CTRL+1 -> CTRL+9) to flick between them quickly where the screen memory would then be drawn to real CPC video RAM.  Alternatively you could also have them windowed at some stage when you get around to writing a Window manager - all tasks dynamically updating and in their relevant (sometimes overlapping) windows.


How are drivers constructed in FutureOS? Are they developed in a standardised way that they could be ported to an AMSDOS driver model easily?  Can we run AMSDOS/BASIC as a task?  Can we run CP/M in it's own memory block within FutureOS (or a CP/M compatible environment)?

Do you want some virtual memory logic to incorporate so you can have 4mb RAM on a 128kb machine?


The way i did multitasking is in the MCP example elsewhere, that is so that it can run lots of tasks in addition to BASIC while you are in AMSDOS. 


I am in the process of gluing the bits together now that EmuCPC has M4 support - although I am waiting to help the author of EmuCPC fix a filename related issue.


GUNHED

#760
Hi Zhulien.  :)

Memory management is done in 16 KB RAM blocks. However a 16 KB RAM block can also be allocated in smaller parts (see attached document, sorry only in German at the moment. I can translate it to English in case of concern).

There will be no classical overlapping windows! Because they bring chaos and it's IMHO ugly to look at them (doesn't matter if PC or CPC, but things get worse with a smaller resolution.

Two ways of displaying are given:
- Output to the common screen
- Output to applications own screen

Only the first 64 KB of the CPC can be used as screen RAM. That's a hardware limitation. So I consider this by not saving GFX screen data there at all. It would make no sense.

A task can check if it is currently switched to 'foreground' or not. That way it knows it it shall put something on the screen or not.

There are at least two producers of 4 MB RAM expansions for the CPC (google it). I own both and they work great. In addition the SF3 provides 2 MB RAM. So not virtualisation is needed. It would slow down things anyway.
The main goal of FutureOS was and is to be the quickest OS on CPC. So, no compromises regarding maximum speed.

If you construct drivers in a defined way, this will ultimately always lead to a loss of space and (even worse) speed. Therefore everything programmed for FutureOS is made in the best possible way to reach maximum speed. And also as side effect small memory usage.

Standard drives are a helpful system for multi platform OS (like windows), but they are a pain when using one particular computer only.

A monolithic OS (/and applications) will always beat a multiplatform OS to dust. That way 80ies computers can still compete with today's industry standard - at least in some disciplines.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

GUNHED

Deleting Tasks...

http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

I think FutureOS could make a great environment for a software development environment, are here currently any?  Pyradev for example if the authors had made it work on FutureOS would be really good. 

GUNHED

#763
Quote from: zhulien on 23:44, 11 October 21
I think FutureOS could make a great environment for a software development environment, are here currently any?  Pyradev for example if the authors had made it work on FutureOS would be really good.

Pyradav seems to be interesting. Yes, you're having a good point here. It would be nice.

What can Pyradev do?

1. A very fast full screen SOURCE FILE EDITOR.
2. A multi-file Z80 MACRO ASSEMBLER/Linker.
3. A powerful debug MONITOR and DIS-ASSEMBLER.
4. A friendly and easy to use DISC-NURSE.
5. A comprehensive FILE MANAGEMENT utility.

FutureOS can already do 1 (FutureTex), 3 a bit (Machine monitor) and 5 (OS functions).

For 2 and 3 it would be great to adapt Orgams.

4 can be achieved pretty easy, all needed OS functions are there.


back to Caruh..............................................................................

Caruh is now working well, means it can:
- Start Tasks
- Delete Tasks
- Alter priority of tasks

The question now is... Which kind of tasks would you like to see?
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

I had no luck with Orgams.


I never really used the disc-nurse or file manaegment features of pyradev.


Although Pyradev shows 1, 2, 3 as separate features, they are somewhat integrated so you never need to leave them and can quickly jump between them all via the menu.  The editor is ok but a bit quirky - you do get used to it.  The macro assembler is super fast, with smart caching and full usage of 576kb RAM.  the Monitor is really good with easy to use single and double stepping.


Even after a crash, you can be back into the cycle within about 10 seconds from disc.


FutureOS is a lot more modern, and given the support for more ram perhaps something like pyradev could be built using existing tools integrating them - if developers are still around and want to work together.

GUNHED

Yeah, that would be great.

I guess what you like about Pyradev is that you don't need to jump between programs. Instead you have everything there. Of course this feels good.

And even it one program starts another, it feels better if the user doesn't need to do it by hand.  :) :) :)

About Orgams I will wait some time (lots of other things can be done meanwhile) until it reaches some final state. Then I will try _TRY_ to adapt it for FutureOS, if this is doable at all.

From Pyradev there is no source code. Therefore it's kind of the same amount of work to adapt it or to write in new.  :-\  I mean toooo much work.

Thanks for your inspiring comments  :) :) :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

I think a more modern set of tools than pyradev is best for sure.  Pyradev seems to use normal disc access (I will try it later on m4 with UniDOS) but it uses totally custom text output functions, the editor is very quirky (in the way you use it).  It is a bottomless and topless document.

GUNHED

Quote from: zhulien on 07:31, 15 October 21
I think a more modern set of tools than pyradev is best for sure.
Just let me know what you want. The more precisely written, the better. It all comes on my 2 DO list.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

m_dr_m

Quote from: zhulien on 02:50, 14 October 21I had no luck with Orgams.

Eh! What went wrong!?!

zhulien

trying to figure out how to load maxam source into it, even trying to figure out how labels and normal directives work.  i couldn't find much documentation for orgams

m_dr_m

Well, Orgams is case sensitive, that would be the main difference.


There is embedded help (hold CONTROL-H pressed).
Tl;dr (in French): http://orgams.wikidot.com/prise-en-main-rapide
Long user guide (in "English"): http://orgams.wikidot.com/userguide


Plus somewhat fast reaction on this forum on full moons.
(Sorry I've completely missed your last question. Don't hesitate to ping.)


(:


m_dr_m

Quote from: GUNHED on 14:03, 14 October 21Then I will try _TRY_ to adapt it for FutureOS, if this is doable at all.
Well, with IMPORT directive incoming, I can gather all the firmware-related calls in one source.

Then, it would be mainly adding BANK reservation.

I think Orgams blows Pyradev out of the water, but I might be biased.  (Return to sources after crash: 1 second).

Quote from: zhulien on 02:50, 14 October 21The macro assembler is super fast, with smart caching and full usage of 576kb RAM. 
I'm interested! Can you give some numbers?
Orgams: ~1000 lines / second. With import + caching it will become much more faster.

zhulien

#772
Orgams is much more modern with a lot more directives it seems.

https://www.cpcwiki.eu/imgs/e/ef/Pyradev_%28Discovery_Software%29_Coverdisc.jpg


https://www.cpcwiki.eu/imgs/7/7c/Pyradev_%28Discovery_Software%29_Manual.pdf


Not bad for a early CPC development tool.



m_dr_m

Quote from: zhulien on 00:34, 16 October 21Not bad for a early CPC development tool.

True! It's really impressive and I'm not sure why it wasn't more widespread (well, quality doesn't imply popularity, but the specifics would be interesting to know).
Orgams is still missing some Pyradev features, you can describe here which one your are missing the most https://www.cpcwiki.eu/forum/applications/orgams-desired-features/
Maybe there is some workaround!

zhulien

i just tried pyradev using UniDOS and unfortunately it reads it'self, won't read code, and wrote write anything at all - so it is definitely bypassing at least some of AMSDOS.  Pitty.

Powered by SMFPacks Menu Editor Mod