Crea sito

AV-CP/M subsystem for Aleph Z80 Hybrid-MMU

AV-CP/M memory map
AV-CP/M memory map

[ENGLISH] — After a long period of time spent on the remake of the video card (memory-mapped) — S.v.S. — and the machine [Aleph-0 (remake)] some times called by me Aleph-(mod. 1), I’m returned on the old memory-managment unit, an old glory of the 2016.

What shell I do with an MMU that can address (about 64 Mega-bytes) of ram on a Z80 but has, a test board that can only support (without expansions) 512KiBytes of RAM?

Why only 512 KiBytes of ram on the Hybrid-board (prototype)?

As I said — on some social forum group —

The experiment of 2016. – It leads to the possibility of virtualizing the CP/M as if it were a small program by AlephSystem. – So by way of example I gave birth to this card which can address 16 MiBytes, but was created with 512KiBytes onboard. – Because I thought it didn’t work. – If did not succeed the engineer Kazuhiko Nishi father of the MSX to realize a good generalized MMU for CPU Z80, why would he have succeeded in doing so Isacco from Avellino ???
But the experiment worked fine!
So I couldn’t fully exploit the 16MiBytes but only 512k.
What am I doing with 512k? — Virtualize the CP / M 2.2. —
AlephSysem (mikrokernel) – is found in roms starts the super-system with the MMU. – Then RECI <— loads the image of the 8 “disk of the 256K CP / M into the Aleph-Y RAM.
Aleph-AVCPM-EMULATOR, provides to answers to the real CP / M when it is to read or write to disk. — Then. – I can run two concurrent CP / M sessions that share the same virtual disk in ram. – All clear I hope. –

April 19, 2019

Was born the AV-CP/M subsystem

Yes it’s so easy on the card, but in realty? — Houston, We Have a Problem. —
I didn’t have images of the 8 “disk to load into Aleph-Y’s memory so I recompiled this image with a very nice emulator capable of emulating a CP/M spot without having to build a card for CP/M.
– [ I can share that emulator and the virtual image of the CP/M] for the use and consumption of the interested parties. – Along with other disk images included with the emulator.
[ZEMU]
http://www.z80.info/zip/zemu.zip

For briefly resume the story of this new version of CP/M, derived by the CP/M 2.2, I deliberately omit the long times spent on debuger of the emulator, — ZEMU — the first part was born on the emulator, another problem was that I consider “horror movie” the intel 8080A assembly syntax, I cannot call a SUM as DAD (father). — it’s incredible but Gary Kildall has made his CP/M in that strange way. — I’m a Z80 purist, but the Intel 8080A assembly is so ugly and unreadable that I’ve run the risk to abbandone the CP/M recompiling for apply a ready-made “kernel” 2.2 without modify nothing. —

Then I discover XIZ.COM
XIZ.COM is by far the most useful of the two. Nearly all CP/M
programs were originally written in 8080 code. Most new computers have
been using the Z80 for some years. (c.i.t.)

[https://comp.os.cpm.narkive.com/… ]

Then I discover that the source of Clarke A. Calkins are available in Z80 mode.
from: the Unofficial CP/M web site [cpm-2.2.zip]. — I’ve got from the zip file [cp22.z80] —
and I work on that. — [But on ZEMU Ambient I prefer to use a ready made kernel] —
So I develop a BIOS multiconfig that works on the emlated ambient (This bios was modified again for work with Aleph Hardware).

–AV-CPM — The training version for the emulator, has many points of incompatiblity with the true hardware. — I was thinking that emulate a disk of 8″ in the true hardware but without any floppy disk drive should be a problem, notting was so different in the reality.

Other problems more subdoles, was so “bad” that I said: — the CP/M is a concentrate of sadness and badness, never seen before. — Modifyng the CP/M in the kernel, CCP or BDOS without loose compatiblitly is hard, quite impossible, yes but I’ve done it, because the good wins over evil. — I’ve joined the three stacks that some devil has created divided, and everything works “better” than the original CP/M. — And shows the user number in the prompt also, like the CP/M 3.3 — But this version remain a CP/M 2.2 — without bank switch so as likes to the Aleph Board that is “totally-incompatible” with CP/M 3.3. simply because aleph does not makes bank switching, and does not uses the I/O for change pages, so there are more chances for MS-DOS (MSX version) instead of the CP/M 3.3 to meet the true Aleph Hardware. —But, this is another story, — that tells the facts of the summer of 2019, from July to september, about these facts I cannot say other words. —

The Emulated Disk-Handler — on true Aleph hardware

Then, in realty I discover that, the disk system is easy to emulate in RAM, a little bit of code in asm to make the Emulated Disk-Handler, and I can load in memory the same image files of the emulator in the true hardware by using — RECI — (- download the Italian version free – ).

And the Emulated Disk-Handlergets and puts each emulated sector, from the image disk loaded in RAM of the Aleph Z80 Hybrid-Board with MMU rev.0.1.F, without any needing of any sort of CP/M.

— Each sector of a CP/M disk is a 128 bytes of buffer. — To make a routine that converts the linear address space, paged in pages of 65536 bytes to [Trk and Sectors * 128] is the more simply problem that I’ve tryed to solve. — [END OF THE FIRST PART OF THIS STORY]

Aleph-Z80-Hybrid-Board and MMU rev.0.1.F
Aleph Z80 Hybrid-Board with MMU rev.0.1.F since 2016