dissassembly of KC Compact Disc rom

Started by arnoldemu, 23:21, 28 October 10

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

arnoldemu

The disc rom was downloaded from KC Club website (DEPROMA.ROM).
Markus has been experimenting with it already.

Now here is a dissassembly, note this is only the bits changed compared to AMSDOS. You need to read both together to understand the full functionality:

http://www.cpctech.org.uk/docs/kcc/kcc_disc_rom.asm

Differences noted:
- Read data (C666) has been patched to support double sided discs.
bit 2 = side, bit 1,0 = drive

- |CPM has been patched to recognise Microdos format and to boot Microdos discs.
(but they did a bad patch here, and it often crashes before it loads )

- step rate has been speeded up

- CR,LF message has had CR,LF swapped around. No effect.

- Two chars ":" and ";" in invalid chars for filename have been swapped. No effect.

- Supports 4 "drives", drives 2 and 3 are ram discs.

- If drive 2 or 3 are selected, then it stops auto detect. Then when disc motor is turned on/off it actually
stores data to ram. Implements a kind of ram disc. It assumes that 128k ram exists, and it also uses the 6128 based OS. (Only works on KCC with basic 1.1 in rom, not the 0.0 version).

It is possible the CPC could boot Microdos if there was a suitable boot program, except perhaps for the ram disc.. but not sure exactly what Microdos does.
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Devilmarkus

Nice stuff!
Thanks for disassembling and commenting!

Here's my video for the MicroDos test:
[youtube=NLJkOUINQ3o]NLJkOUINQ3o[/youtube]
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Powered by SMFPacks Menu Editor Mod