000
17.12.2013, 21:18 Uhr
holm
|
Die verbesserten NEC Nachbauten des I8088 und I8086 verfügen über einen Emulationsmode für de I8080 wie auch hier unterhalb zu lesen ist. Ich habe uralte AM2900 Assembler Software mit einem Bisschen Framework drumherum, das bewerkstelligen soll das diese CP/M Software auf einem DOS PC mit einem V20 oder V30 laufen soll. Wichtig dafür ein ein Programm Namens X.com, von DR. Im Program X.com ist Folgendes zu lesen:
Quellcode: | 64K V20-80 CPeMulator Version 2.02 as of October 7, 1985 Copyright (c) 1985 U.S. DIGITAL Corporation
To run a program, type "V2080 FILENAME" at the MSDOS prompt (CPM programs are assumed to have a filename extent of .CPM). Use of this program requires that a NEC V20 chip be installed in the computer in place of the 8088 MPU. This will allow you to run 8080 based CPM-80 programs on your MSDOS machine (within hardware and software limitations). DISCLAIMER: U.S. Digital makes no warranties or claims of the fitness of this product for any particular purpose. (As always, make backups before trying anything!)
NOTICE: Users of this program are granted a limited license to make copies of this program for trial use by others on a private non-commercial basis. This limited license does not include -- 1. Distributing this program in connection with any other product 2. Making the program available for any consideration or "disk fee" 3. Distributing the program in modified form. Thank you for your cooperation!
If you have received this program and find it of value, your $35 contribution will be appreciated. In exchange, we will send you the latest release, a manual, and a catalog of our other fine products. For more information please call (503) 654-0668 or write U.S. Digital Corporation, 5687 S.E. International Way, Milwaukie, OR 97222
|
Da drin gibts noch hübsche Kommentare für Leute wie uns:
Quellcode: | Oh dear, you are looking around in here? Sigh... That does not bode too well I would think. It is beginning to look to me like you are intending to steal my code. Sigh... Now I am getting depressed... .... I do not suppose asking you nicely to not steal my code would make any difference would it? .... Still with us are you? Sigh, and I had such high hopes for you. ... Persistant little devil aren't you? .... As is your head. ... Sigh... You realize don't you that you are causing me to lose faith in you. It is more then simple curiosity for you to have gotten this far. ...
und Weiteres..
|
Das gibts als Readme zum Paket
Quellcode: | TO USE THE MICRO ASSEMBLER TYPE ASM <FILENAME> YOU MAY PUT MS/DOS BATCH FILES TOGETHER USING ASM.BAT AS A EXAMPLE YOU MAY USE YOUR EDITOR ON MS/DOS TO CREATE FILES FOR THE ASSEMBLER THIS SOFTWARE REQUIRES AN NEC V20 OR V30 PROCESSOR TO FUNCTION. THIS IS NON-SUPPORTED SOFTWARE !!!!!!!!!!!!!!!!!!!! THIS ASSEMBLER WILL WORK ON: 2901,2903,29203 29116,29117 29331,29325 141 FOR BETTER TOOLS AND SUPPORT SEE: STEP ENGINEERING HEWLETT PACKARD HI-LEVEL TECHNOLOGY TEKTRONIX THANK YOU FOR USING ADVANCED MICRO DEVICES PRODUCTS D.H.G. COLUMBUS 8/5/86
|
Hier eine V20 Beschreibung...
Quellcode: | ESKAY 9/14/85
What a name for a file, you my think..
This is a brief rundown of the NEC uPD70116, also known as the V30. To my knowledge, most of this also applies to the V20.
The V30 is a 16-bit microprocessor in a 40-pin package with the same pinout as Intel's 8086. I see it basically as an enhanced 8086 with extended features, but it may also be considered a stripped-down 80186 with extended features.
The V30's mnemonics are significantly different from Intel's, this is probably due to legal considerations. We users shouldn't get hung up on this and simply use Intel's mnemonics...
The V30 has three types of instructions:
- 8086-compatible instruction set - enhanced instructions (80186 compatible) - unique extended instructions.
Note: the data sheet says nothing about 80186 but I found the opcodes for "enhanced" instructions to be identical to those found in the 80186.
Since everyone knows the 8086 instructions, let's look at the "enhanced" instructions, which are really the 80186 extensions in disguise:
NEC mnemonics INTEL mnemonics Example Function
PUSH imm PUSH imm PUSH 77H Push an immediate value PUSH R PUSHA PUSHA Push 8 general-purpose regs POP R POPA POPA Pop 8 general-purpose regs MUL imm MUL imm MUL AX,7 Multiply reg/mem by immediate all shift/rotate instructions with immediate arguments SHR AX,3 CHKIND BOUND BOUND Check array boundary INM INS INS BYTE Input string from port DX to [DI] OUTM OUTS OUTS BYTE Output string from [SI] to port DX PREPARE ENTER ENTER 28,3 Allocate stack frame for procedure DISPOSE LEAVE LEAVE Deallocate stack frame when leaving procedure
The V30 has the following unique instructions:
INS Insert bit field EXT Extract bit field ADD4S Add packed BCD strings SUB4S Subtract packed BCD strings CMP4S Compare packed BCD strings ROL4 Rotates 1 BCD digit left through AL low nybble ROR4 Rotates 1 BCD digit right through AL low nybble TEST1 Test a specified bit and set/reset Z flag NOT1 Invert a specified bit CLR1 Clear a specified bit SET1 Set a secified bit REPC Repeat until CY clear REPNC Repeat until CY set FPO2 Additional floating point processor call
Additionally, the V30 has a mode bit (bit 15 of the flags register) which determines whether the chip operates in "native" mode or in "8080 emulation" mode. The following instructions control the mode bit:
BRKEM break for emulation RETEM return from emulation CALLN call native routine RETI return from interrupt/native routine
In 8080 emulation mode, the registers are used as follows: A=AL, B=CH, C=CL, D=DH, E=DL, H=BH, L=BL, SP=BP
Due to hardware differences between the Intel 8086 and the V30, the V30 executes most instructions faster than the 8086. Thus, even if none of the advanced features are used, replacing your existing 8086 with a V30 should speed your system up.
As of last week, the V30 was not yet available to the general public. The V20, however, (the 8088 replacement) is available and is being offered for sale by some local distributors.
For more information, contact your local NEC support office or NEC parts dealer (in Dallas, go by "Off the shelf components" at 11441 Stemmons Fwy [247-0052] and ask for a spec sheet).
Both the V20 and V30 come in 5MHz and 8MHz clock speeds. As soon as the 8MHz V30 becomes available, I'll run some benchmarks on it.
|
Ich halte das für ganz interessant, nur braucht das außer mir keine Sau, zumindest den CP/M Emulator auf V20/30 braucht wohl Keiner mehr..
Gruß,
Holm -- float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v; {s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+ (r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&& (A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;} Dieser Beitrag wurde am 17.12.2013 um 21:19 Uhr von holm editiert. |