News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_d_kef

HDCPM - boot and run CP/M plus from hard disk

Started by d_kef, 16:48, 30 December 21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

d_kef

OK. So the problem with HDCPM was the way the boot loader was moving the CP/M patcher code to RAM page 7 (RAM mode &C1).
It seems that when the upper ROM is paged in and RAM mode &C1 is in context then writes to page 7 are failing with corrupted data.
I don't know if this is something known for CPC 464 RAM expansions?

Anyway after rewriting and optimizing parts of the boot loader I'm happy to say that HDCPM can now boot CP/M Plus on my 464.
So here is the test release v1.c7 for anyone who wants to try it.
I tried it with M4, Albireo and USIfAC II (I was surprised to find out that my USIfAC II works just fine when the M4 is also plugged-in working as a ROM board!)
My Cyboard is not working with this configuration but I suspect it's a voltage issue.
The Universal 512K RAM card was tested successfully in both Dk'tronics &C3 and full shadow modes.
Also the 464 booted fine with the 464 OS and Basic ROMs and no AMSDOS ROM or DDI-1 connected! The only minor problem with the 464 ROMs is that when you return to Basic with the AMSDOS.COM command the 464 freezes because the OS ROM can't handle the RAM paging mechanism.
With the 6128 ROMs everything works like in the 6128.

Any kind of feedback and especially tests with SF2/X-Mass, SF3 would be much appreciated!

d_kef

pjrodriguez

#176
Hello, I have an Ulifac board and I'm trying to set CP/M to work with it. The easy way seems to use the .img files from the first post but if I run the HDCPM.BIN file I get a message saying that CPMDSK01.IMG is fragmented. Is there a way to defragment it?

d_kef

Quote from: Pedro José Rodríguez on 16:12, 18 July 23Hello, I have an Ulifac board and I'm trying to set CP/M to work with it. The easy way seems to use the .img files from the first post but if I run the HDCPM.BIN file I get a message saying that CPMDSK01.IMG is fragmented. Is there a way to defragment it?
You can't do it with your CPC. You have to plug your USB stick to a modern computer and then you have 2 options:
1. Copy the contents of your USB stick to your computer's hard disk, format the USB stick and then copy back first the .img file(s) and then everything else.
2. Use some kind of defrag software, like "disk optimizer" or "defraggler" etc.

d_kef

pjrodriguez

That was easy! HDCPM is working great in my Ulifac with two hard drives, one floppy drive and even an 444k M: drive. Thank you!

d_kef

For those who want easy file transfers between their (HD)CP/M image files and their PCs, Uwe Merker created CP/M Image File Explorer.
It is based on the source code of Michael Haardt's CP/M tools, version 2.23
The main difference is that CIFE is a GUI application. So it is much more user friendly.
There are executables for Windows and Linux 32/64bit. You need to copy the executable together with "diskdefs" in the same folder and run it.
Don't forget to add the HDCPM definition record in the "diskdefs" file:

diskdef hdcpm
  seclen 512
  tracks 65
  sectrk 256
  blocksize 8192
  maxdir 1024
  skew 0
  boottrk 1
  os 3
end



You cannot view this attachment.

d_kef

poulette73

Thanks for sharing this tool, very useful with HDCPM disk images !

poulette73

Another example with 4 virtual disk images of 8MB each.
Tested with M4 Board and RSF3 (new version of Symbiface III).

This is really awesome app ! 👍


d_kef

#182
I've just released the new HDCPM v1.10

The new version supports also booting on a CPC464 equipped with a &C3 mode compatible RAM expansion card and on a CPC/Plus that has a faulty or no Floppy Disk Controller present.
Parts of the main ROM code had to be re-written and a couple of bugs were fixed.

Tests with all of my mass storage interfaces were successful, but you can always let me know of any problems you encounter and I'll do my best to fix them, although if they involve a 464, they might take some time to solve as my good old 464 kicked the bucket. But that's for another thread.

You can download the new .dsk file at the HDCPM's wiki page.
If you are new to it please take some time to read the instructions.
If you are using any of the test versions, 1.a7, 1.b7, 1.c7, please upgrade to the new stable and fully tested version.

A big thanks to @revaldinho, @Devlin and @zhulien for their help and debugging.

d_kef

poulette73

Updated to v1.10.
I confirm that it works correctly with the M4 Board and the RSF3.

Nice job !

zhulien

Sorry for delay, it works for me with dktronics as well as xmem

zhulien

#185
I had a thought about breaking the 8mb barrier. What if... you had as big a chunk as you needed, but you implement a cd command to change directories, but what it does is change which 8gb hardfile is used. This will keep fcb happy. Given cpc cpm doesn't multi-task with different folders.

Possibly existing commands never need changing. Even nsweep to copy from a to b just change different directories within different drives thst all share the same root.

Make a new did command that lists directories only, these can even be maintained within a file

Cd to change directories actually changes which file is mounted in the drive

Maybe only allow 1 level of directories to simplify it so you never need to track parent

poulette73

#186
Instead of constantly suggesting lots of ideas... and lots of dreams... , always asking almost everywhere in all the cpcwiki topics, why don't you develop it yourself, and share it to the community? 🙄

d_kef

Quote from: zhulien on 10:03, 22 September 23I had a thought about breaking the 8mb barrier. What if... you had as big a chunk as you needed, but you implement a cd command to change directories, but what it does is change which 8gb hardfile is used. This will keep fcb happy. Given cpc cpm doesn't multi-task with different folders.

Possibly existing commands never need changing. Even nsweep to copy from a to b just change different directories within different drives thst all share the same root.

Make a new did command that lists directories only, these can even be maintained within a file

Cd to change directories actually changes which file is mounted in the drive

Maybe only allow 1 level of directories to simplify it so you never need to track parent

In fact I do have a "mount" command in my todo list since one of your previous posts, but I'm going at my own pace here.
So I won't give any promises but at some point I might give it a try. 
Anyway, I still think that 32MB of CP/M apps and data is enough for everyone.

d_kef

zhulien

Quote from: poulette73 on 10:21, 22 September 23Instead of constantly suggesting lots of ideas... and lots of dreams... , always asking almost everywhere in all the cpcwiki topics, why don't you develop it yourself, and share it to the community? 🙄
I do for projects I am working on, so you dont like feature suggestions in others products? Bad luck for you.

I use their products as those others did a great job.

poulette73

Quote from: zhulien on 06:14, 23 September 23so you dont like feature suggestions in others products?
I use their products as those others did a great job.
Of course I use their product too. This is off-topic.
And I allow myself each time to congratulate the quality of the work provided by all these software and hardware creators, the usefulness, and the sharing with the community.

Look at your interventions: https://www.cpcwiki.eu/forum/profile/?area=showposts;u=58

It doesn't help to be constantly criticizing, and claiming:
- unachievable things.
- impossible to implement.
- require months of development.
- absolutely no one will never use.
- or even completely useless (example here with HDCPM having disks of more than 8 MB... What for? With the 4 disks of 8 MB provided by d_kef, therefore with 32 MB of storage : it is impossible to fill them with all the CP/M content existing in software since the existence of CP/M on CPC...).

Today everything already exists in terms of great interfaces (memory, storage, network, sound, communication, and so on). But there is a big lack of developments to exploit them.

There are 4 MB memory extensions whose capacity is not even used because nothing exists for them. And you asking for memory expansion up to 16 MB or more?

zhulien

#190
Quote from: poulette73 on 07:01, 23 September 23
Quote from: zhulien on 06:14, 23 September 23so you dont like feature suggestions in others products?
I use their products as those others did a great job.
Of course I use their product too. This is off-topic.
And I allow myself each time to congratulate the quality of the work provided by all these software and hardware creators, the usefulness, and the sharing with the community.
Look at your interventions:

 https://www.cpcwiki.eu/forum/profile/?area=showposts;u=58

It doesn't help to be constantly criticizing, and claiming:
- unachievable things.
- impossible to implement.
- require months of development.
- absolutely no one will never use.
- or even completely useless (example here with HDCPM having disks of more than 8 MB... What for? With the 4 disks of 8 MB provided by d_kef, therefore with 32 MB of storage : it is impossible to fill them with all the CP/M content existing in software since the existence of CP/M on CPC...).
Today everything already exists in terms of great interfaces (memory, storage, network, sound, communication, and so on). But there is a big lack of developments to exploit them.
There are 4 MB memory extensions whose capacity is not even used because nothing exists for them. And you asking for memory expansion up to 16 MB or more?
I have no need for cpm for more that much storage but... if ibhad directories in cpm that will make it 200% more usable.  The 8mb is a technical issue of cpm and given they are hardfiles in d_kef's implementation it makes it a quite easy solution vs any other solution to have directories.

I don't think I have criticized anything, when?

I have never suggested anything that is impossible.

Some things do require months to develop,  have you never developed anything?

I develop tools mostly, if you don't like to use tool fair enough.  I not sure why people don't want to do certain things on cpc, do you? 

I'm not a hardware person but I do know a tiny bit from uni days.  The cpc community has created some awesome hardware and I try to make tools or experiments with them some which I finish some wip and some seems nobody cares about too. Do I care if you don't like multiple screens on cpc now with the addition of your m4 card?  I don't, but the facility is there and no other developers wanted to utilize it. So be it.

Did you ever use my discology ROMs or CPM ROMs? Here almost ever cpc user was using them. Now we are very few and m4 and xmass with d_kef cpm has removed the need for the cpm ROMs.

Do you want multiprocessing in your cpc? I do and it works so far. 

I also want my compilers to now generate binaries not just z80 source code because I cannot find an assembler that does what I need it to do... so a bit more work on those.

Seems nobody in cpc land like to agree on anything, not standards, not anything at all so everyone has their own solutions that are all incompatible with eachother.  Alternate DOS are examples... thank God for unidos. 

Nobody seems to want to make online games for cpc (incoded backend POCs for anyone to use), nobody cares about the lobby and messaging facilities that are there for in-game for example...and achievements.  Nobodybcares about browsing on cpc even if specific cpc sites... all of which is there for the masses. As the saying goes, you can lead the horse to water...

As for a cpc using a vga monitor I need that because the one monitor I do have is not where I live.  If I could make a vga card myself, I would. Didn't I say I am a software person?

poulette73

#191
Quote from: zhulien on 07:18, 23 September 23Some things do require months to develop,  have you never developed anything?

You don't know me... 40 years that I set foot in computing, including 28 years professionally as an IT and systems engineer...decades of development in different languages & operating systems...in large corporate projects. But it's not a contest for whoever has the biggest, and it's completely off-topic to judge.

The difference is that I don't live in a dream, and I don't ask others for what I am not capable of doing myself.

Now I'm passing my turn...
I prefer to spend my time on concrete things.

zhulien

Quote from: poulette73 on 08:09, 23 September 23
Quote from: zhulien on 07:18, 23 September 23Some things do require months to develop,  have you never developed anything?

The difference is that I don't live in a dream, and I don't ask others for what I am not capable of doing myself.

The reason I do is because it lets others know there is a market for at least 1 person and I actually buy hardware and software for my CPC to support them.  Nobody is forced to, but if nobody produces anything I (and others) won't buy it.

Sounds like we both have similar background.  None are dreams here, they are actually being worked on and if you have been following my posts, you may have even tried some things.  Let me see, maybe someone wants to form a development group with me?  (seems nobody is in Australia that wants to to my knowledge...).

Off Topic in the cpm thread...  so I will post a new thread for that and if you want to complain there about the projects I have completed, partically completed or have planned - you can do so there ;)

Mark_wllms

Going back to the discussion around directories in CP/M, this is possible already, by installing Z3Plus

poulette73

Have you implemented it specifically with HDCPM, and validated how it works ?

Can you give us a demo with HDCPM ?

d_kef

Quote from: poulette73 on 11:38, 01 October 23Have you implemented it specifically with HDCPM, and validated how it works ?

Can you give us a demo with HDCPM ?
In fact there is a readily available disk image in the HDCPM wiki page that boots directly to Z-System.

Furthermore, Z-System (Z3Plus or ZCPR3) just assigns names to drive/user combinations. So you can refer to them by a 'directory' name.
So there are always 16 'directories' per disk.
For example, if you have stored your basic programs in drive D: , user 3, you can assign directory name 'BASIC' to it.
Next, when you want to change to that 'directory' you can enter 'BASIC:' instead of 'D3:'
If you want to run 'MYPROG.COM', which is saved in D3: you can enter 'BASIC:MYPROG' instead of 'D3:' and then 'MYPROG'.
Of course you need also Z-System compatible apps and tools in order to take full advantage of the directory naming. For example, the standard 'PIP.COM" will produce an error if you enter 'PIP TEMP:=BASIC:MYPROG.COM'

You can find everything Z-System (Z3Plus , ZCPR3) related if you google around.

d_kef

pollito

First of all, @d_kef many many thanks for all your hard work on HDCPM, and of course to everyone else who contributed. It is greatly appreciated.

I'm trying to get the latest version working on my CPC 464 with an M4 board, a Revaldinho Universal 512K RAM Expansion board, but no FDI-1/DDI-1. I've tried it with the RAM in DK'Tronics/SymbOS mode, in FutureOS mode, and in Full Shadow mode, but whenever I type |HDCPM or |HDCPMT I get:

This program will not run in this
environment. Press any key


I think it may have something to do with my ROM configuration. The (relevant ROMs) I have configured are as follows:

SLOT / ROM

0 / BASIC v1.1
2 / HDCPM
7 / M4
8 / AMSDOS 0.5
31 / OS6128v1.1

There are other ROMs installed such as SymbOS, RulezCharge and Jetset Willy 2, but I don't believe this should affect HDCPM. I have also tried with and without AMSDOS but I always get the same message.

If anyone has any ideas I would be very grateful!

HAL6128

could you set Amsdos to rom slot 7 and M4 to 6?
...proudly supported Schnapps Demo, Pentomino and NQ-Music-Disc with GFX

d_kef

...and disable the SymbOS ROMs.
I know it doesn't make sense but CP/M Plus doesn't like the SymbOS ROMs for some reason. You can run SymbOS directly from your M4's SD card  anyway.


d_kef 

pollito

Thanks both for your advice. Unfortunately, the issue persists.

These are now the only ROMs installed:

SLOT / ROM

0 / BASIC v1.1
1 / HDCPM
6 / M4
7 / AMSDOS 0.5
31 / OS6128v1.1

The HDCPM ROM I am using is from Hdcpm110.dsk downloaded from the HDCPM page, with the CP/M disk images from the Other downloads section on that page.

Any other ideas?

Powered by SMFPacks Menu Editor Mod