ugbowen@sunybcs.UUCP (Devon Bowen) (07/07/86)
First : To the person who posted about the Vt100 emulator. Please send me the address of the supplier. I'm in desparate need of one. I tried replying by Email, but we had some trouble with the net recently and my reply won't go through. Thanks a million!!!! Second : To all you people at Commodore (and any others that can help). I learned ML on a Z80 and was thrilled to hear of one in the 128, now I'm wondering if there is any way you can switch in a bank of RAM and I/O and then turn on the Z80 so that all ML can be Z80 code. I see no reason why this couldn't be but I haven't seen any meantion of it in the reference guide. I know the Z80 can be activated with a bit in the MMU, but I haven't tried it because once I activate the Z80 I have no idea where to put my Z80 code so that it can find it!! I much prefer the Z80 to the 8502 and I'd love to use it extensively (with the VIC, SID, and MMU of course). By the way, why did you guys do the CP/M BIOS in 8502? I'm still struggling with that one, too. Thanks for any help... Devon E Bowen University of Buffalo
daveh@cbmvax.cbm.UUCP (Dave Haynie) (07/07/86)
> > First : > > To the person who posted about the Vt100 emulator. Please send me the address > of the supplier. I'm in desparate need of one. I tried replying by Email, but > we had some trouble with the net recently and my reply won't go through. > Thanks a million!!!! > > > Second : > > To all you people at Commodore (and any others that can help). I learned ML on > a Z80 and was thrilled to hear of one in the 128, now I'm wondering if there is > any way you can switch in a bank of RAM and I/O and then turn on the Z80 so > that all ML can be Z80 code. I see no reason why this couldn't be but I haven't > seen any meantion of it in the reference guide. I know the Z80 can be activated > with a bit in the MMU, but I haven't tried it because once I activate the Z80 > I have no idea where to put my Z80 code so that it can find it!! I much prefer > the Z80 to the 8502 and I'd love to use it extensively (with the VIC, SID, and > MMU of course). By the way, why did you guys do the CP/M BIOS in 8502? I'm > still struggling with that one, too. Thanks for any help... > > Devon E Bowen > University of Buffalo I don't know the exact details (my PRG is at home), but I can tell you a bit about the Z-80 interface on the C128. When you power up, the Z-80 takes control immediately, checks for a few C64 mode things (C= key or a cartridge in place), then initializes anything else important to the Z-80 in C128 mode, and then writes to the MMU. The Z-80 is left frozen at the next instruction. The 8502 and the Z-80 communicate via a sort of RAM based mailbox. When you set the MMU next, the Z-80 should check this area for a command (which includes, I believe, jumping to a machine language program). Once you get to this program, you could certainly stay on the Z-80 side forever if you desire. There were several reasons for doing some of the CP/M BIOS with the 8502. First of all, only part of the CP/M BIOS is done by 8502; mainly the serial bus driving for disk and printer, etc. There's alot of software involved in this, and it already exists for the 8502 side. The Z-80 does its own screen display, keyboard I/O and user port I/O. The 8502 at 1.02MHz (SLOW for you BASIC fans) is almost twice as fast as the Z-80, which runs at an effective speed of 2.04MHz. The 8502 in FAST mode (not used during CP/M) is nearly four times as fast. So in addition to saving lots of code on the Z-80 side, doing disk I/O with the 8502 is also faster. For talking to I/O devices from the Z-80 side, don't set the MMU's I/O bit, this could really confuse the C128. Instead, turn off MMU I/O and use the Z-80's 16 bit I/O instructions. What, you say, you didn't know that the Z-80 HAD 16 bit I/O instructions? Yup, IN (C) and OUT (C) instructions both actually generate an address from the BC pair. And all of your favorite I/O devices will be at $D000 (or 0D000H if you prefer) on up, just like in C128 mode (except that you don't bank stuff around so much). I believe the CP/M section in the PRG should cover the Z-80/8502 interface in more detail. -- /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ Dave Haynie {caip,ihnp4,allegra,seismo}!cbmvax!daveh A quote usually goes here, but its currently being rennovated. These opinions are my own, though for a small fee they be yours too. \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
porter@cbmvax.UUCP (07/12/86)
> To the person who posted about the Vt100 emulator. Please send me the address > of the supplier. I'm in desparate need of one. I tried replying by Email, but > we had some trouble with the net recently and my reply won't go through. > Thanks a million!!!! > There is a VT100 emulator for the 128 in 80 columns included with every Commodore modem (300 and 1200). It has a few problems with EDT on VMS, but I use it all the time for vi on UNIX. Jeff Porter Commodore Engineering