Compupro progress / Console questions ?
Allison
ajp166 at bellatlantic.net
Sun Jul 24 21:23:57 CDT 2005
>
>Subject: Re: Compupro progress / Console questions ?
> From: Dave Dunfield <dave04a at dunfield.com>
> Date: Sun, 24 Jul 2005 21:24:53 -0400
> To: "General Discussion: On-Topic and Off-Topic Posts" <cctalk at classiccmp.org>
>
>Hi Allison,
>
>>known but forgotton problem in the 8" world. 765 has a READY sense line
>>and the 851 is know for changing state of the line during select.
>>Solution, force ready at the board (jumper) and don't use it. READY
>>was for detecting disk changes.
>
>Tried forcing READY on the original SA-851's, and it still didn't boot.
>I immagine there must be some other jumpering issues. I'm leaving that
>for now, as I do have a drive working.
There is a board level jumper.
>>>According to Compupro Docs, the Console port is USER 7 - I have
>>>setup the board to respond to users 4-7, which is the default setup
>>>requireed for the console shows in the Compupro docs. As noted
>>>above, I can select user7 and talk to the console correctly, which
>>>would suggest that this is all working correctly.
>>
>>It is likely initing the ports but may not use any of them. It's
>>possible the bootable media may use a different port scheme. Its
>>likely a difference between the boot roms and the BIOS code once
>>the boot transfers to the OS.
>
>Yes, thats one of the possibilities - others are that it is hanging
>on some other part of the init, or simply crashing (bad RAM etc.)
>
>
>>I assume based on the CPU your runnig CP/m-86 (or any DRI -86)
>>as the boot roms load a loader then load the OS (bios and all).
>>So booting is multi step code.
>
>Yes, it is CP/M 86 as noted in my original message:
>
>>The disks I am using are original Compupro distribution disks
>>(Can't make copies yet), labled:
>>
>>Serial# C86-272-1854
>>Version: CP/< 86 (P0 in handwriting)
>>CP/M 86 1.1
>>SYSTEM MASTER
>>Disk Number 1
>>Single Sided - 1024 B/S
>>
>>Serial# C86-0272-1854
>>Version: 1R
>>CP/M 86
>>SYSTEM MASTER
>>Disk Number 2 of 2
>>Single Sided - 1024 B/S
>
>I was hoping someone might recognize these disks and be able to tell me
>if they are setup for the Interfacer-4, or some other device - or perhaps
>someone has a known good boot disk for this config (86/87, Disk1A,
>Interfacer4)?
>
>I've had to put it away to get some other more pressing items on the bench,
>however when I get back to it, I am going to proceed as follows:
>
>I've been using an EPROM emulator to load my modified boot - this will also
>let me change the content of the boot ROM with power-on (while it is switched
>out of course).
>
>The boot rom provides 512 bytes at 00-FF - while it is enabled (out of reset)
>I can write all of memory, however I can read only the boot ROM - once I hit
>the enable, the boot-rom disappears and RAM appears.
>
>I plan to write a loader which will allow me to load a block of code into
>RAM at $0200, and to switch the ROM OFF and the RAM ON in the very last
>instruction of the 0000-01FF block - so it should transition to the code in
>RAM correctly.
>
>Boot the system normally,
>then load the loader into the boot-rom (via EPROM emulator),
>Reset should start loader.
>Send my 8086 monitor.
>Loader will put it in RAM and transition to it.
>Then I should be able to browse around the loaded memory image,
>and perhaps determine what type of console device it wants to communicate
>with.
>
>Main problem is: I don't know much about CP/M-86 - I do not have technical
>documentation or experience with it.
>
>With CP/M-80, it's fairly easy to find the console drivers by following
>addresses. I have no idea how to do this with CP/M-86
>
>Can you give me any pointers to how to find the console I/O functions under
>CP/M-86?
>
>I do have CP/M-86 running on an APC that I Can experiement with - I will also
>check the APC docs to see if they contain any useful info. I also have a Rainbow
>and docs, however I do not know how similar it will be as I seem to recall that
>the CP/M it has is a special dual-processor version.
Well I've never had to find the drivers blind. the time I spent with -86 was
at the front of the process, creating a working bios so I knew where I was going
rather than trying to figure were someone else went. It didn't hurt that I had
a boot monitor (subset of DDT in eprom).
CP/M 86 is not unlike cpm-80. The rom boot is enough to pull the next boot
off disk and usually that loads the loader. The laoder gets dropped at a
standard address 0000:0400h sticks in my mind. The loader is really a
minimal bdos and bios, enough to find CP/M86.sys and put it at the load
address for the system. I don't remember there being dynamic sizing so
if there isn't enough ram, Oops, crash. Once loaded the BDOS and BIOS
addresses have standard calling locations that are jumps (long jumps)
to them. A handy thing would be to disassemble the load file directly
rather than finding it ram, if possible.
The apc is a good version. The rainbow is really in a different league
as the bios is shared with the z80 making it much more complex.
Allison
More information about the cctalk
mailing list