Re: VCF/PNW Exhibit & Trip Report - The Old Calculator Museum
Noel Chiappa wrote: > > It has been in use at STACKEN at least since the beginning of the 80ies > > I was meaning before that; somewhere in Scandanavia, I expect? Eh, not that > important, I guess. >From Finland. Sold used by DEC Sweden to Stacken, for 1 SEK (aound 20 cents at that time). >Noel --Johnny /\_/\ ( *.* ) > ^ <
Re: Microcode, which is a no-go for modern designs
> Few people (but most are right here) can recite PI to enough digits to > reach the level of inaccuracy. And those who believe that PI is exactly > 22/7 are unaffected by FDIV. (YES, some schools do still teach that!) Why remember the digits, when a small program can provide them? +0un qn"E20Un' 0Uh 0uv HK Qn Qq/10Ut Qh+Qt+48Uw Qw-58"E48Uw %v' Qv"N:Qv,1^T' QwUv Qq-(Qt*10)Uh> :Qv,1^T !Can you figure out what this macro does before running it? It was written by Stan Rabinowitz with modifications by Mark Bramhall and appeared as the Macro of the Month in the Nov. 1977 issue of the TECO SIG newsletter, the "Moby Munger". For information on the TECO Special Interest Group, write to Stan at P.O. Box 76, Maynard, Mass. 01754! --Johnny
Re: Happy Armed Forces Day 2018
Fred Cisinwrote: > d) The TRULY IMPORTANT issues will never be solved through the use of > armed forces: > big-endian V little-endian > vi v emacs > DEC V IBM > CDC V IBM > TRS80 V Apple > Atari V Commodore > IBM V Apple > Android V IOS > Linux V Windoze V MacOS > number of buttons on a mouse On the other hand, the fight against the X86 architecture might be done with the help of arm forces... --Johnny /\_/\ ( *.* ) > ^ <
Re: USB Panda Display for klh10 help
David Griffithwrote: > I'm looking for someone who knows TOPS10 / TOPS20 well enough to figure > out for me why this test program won't compile. Once that's done, I can > complete the firmware for the USB Panda Display an its support within > klh10. I'll then make more copies of the USB Panda Display board (and > maybe overlays) for whoever wants them. A couple of observations on the following code: 1/ It is written for, and uses TOPS20 syscalls. If you intend to run this under TOPS10 change the syscalls (LITES% and DISMS%) to the equvialent TOPS10 counterparts, can be done by including these lines: SEARCH UUOSYM OPDEF LITES% [LIGHTS] OPDEF DISMS% [HIBER] 2/ The program uses the CIRC instruction, which is not present in stock DEC processors, and possibly not known to MACRO-10. You could try OPDEF CIRC [247000,,0] if that is indeed the problem. [source code trimmed down] > David Griffith --Johnny
Re: 8085 Dissasembly?
Bill Gunshannon wrote: > Many of us think that the advent of the x86 architecture is what led to > masochism. ... or masochism led to the x86 architecture. > bill --Johnny
Re: Speed now & then (Space and time?)
Ethan Dickswrote: > There are times when video instruction makes sense - describing, for > example, a chemical reaction that produces major visible change in a > few moments is better to watch than to try to describe. The vast > majority of stuff? Teaching programming? I don't want to watch 2 > hours of someone editing text... give me words and perhaps a > screenshot or two if there's something too complicated to simply write > about. How about language courses on audio cassettes? For instance a course on Macro-10, over several of them? Yes, it does (or at least did) exist. > -ethan --Johnny
Re: DL10 documentation
Lars Brinkhoffwrote: > Hello, > > Richard Cornwell wants to implement DL10 for his KA10/KI10 simulator, > but he doesn't have any documentation for it. Any leads? First question is: since the DL10 is a DMA device for a handful of PDP11s, what is intended at the other (unibus) end of it? I have found that http://bitsavers.trailing-edge.com/pdf/dec/pdp10/periph/MP00068_DN87_Universal_Comm_System_Front_End_Jan76.pdf contains the engineering drawings for the DL10. Also, the tops-10 source file D85INT.MAC (from the unsmon directory) contains the driver for it. If the idea is to get more terminal lines, maybe a DC10 scanner would be an easier starting point. --Johnny
Re: Which Dec Emulation is the MOST useful and Versatile?
Lars Brinkhoff wrote: > Jon Elson wrote: > > I'm not sure the original DEC PDP-10 (KA-10) used microcode, but the > > KI-10 did. > > As far as I understand, the PDP-6 (type 166), KA10, and KI10 were > hardwired. KL10 and KS10 were microcoded. The Foonly F1 preceeded and > influenced the KL10 design. This is exactly correct. BTW: they still are... --Johnny
Re: Unknown 8085 opcodes
> I built a disassembler years ago to pick apart captured malware. By > now it handles about a dozen ISAs. While 8080 and 8085 are not on the > list, Z-80 is; adding 8080 would be a relatively simple thing. I've > added that to my to-do list; if someone can point me to 8080/8085 > machine language documentation that would save me some searching (which > is something I'm not much good at in these days when frickin' > *everything* is shoehorned into a Web page). You mean something like this, from another disassembler project: /* Intel opcode table */ static dispblock inteldisp[256] = { { 0x00, 1, inst, 0, "nop" }, { 0x01, 3, inst, 0, "lxi b,%2" }, { 0x02, 1, inst, 0, "stax b" }, { 0x03, 1, inst, 0, "inx b" }, { 0x04, 1, inst, 0, "inr b" }, { 0x05, 1, inst, 0, "dcr b" }, { 0x06, 2, inst, 0, "mvi b,%1" }, { 0x07, 1, inst, 0, "rlc" }, { 0x08, 1, unused, 0, 0 }, { 0x09, 1, inst, 0, "dad b" }, { 0x0A, 1, inst, 0, "ldax b" }, { 0x0B, 1, inst, 0, "dcx b" }, { 0x0C, 1, inst, 0, "inr c" }, { 0x0D, 1, inst, 0, "dcr c" }, { 0x0E, 2, inst, 0, "mvi c,%1" }, { 0x0F, 1, inst, 0, "rrc" }, { 0x10, 2, unused, 0, 0 }, { 0x11, 3, inst, 0, "lxi d,%2" }, { 0x12, 1, inst, 0, "stax d" }, { 0x13, 1, inst, 0, "inx d" }, { 0x14, 1, inst, 0, "inr d" }, { 0x15, 1, inst, 0, "dcr d" }, { 0x16, 2, inst, 0, "mvi d,%1" }, { 0x17, 1, inst, 0, "ral" }, { 0x18, 2, unused, 0, 0 }, { 0x19, 1, inst, 0, "dad d" }, { 0x1A, 1, inst, 0, "ldax d" }, { 0x1B, 1, inst, 0, "dcx d" }, { 0x1C, 1, inst, 0, "inr e" }, { 0x1D, 1, inst, 0, "dcr e" }, { 0x1E, 2, inst, 0, "mvi e,%1" }, { 0x1F, 1, inst, 0, "rar" }, { 0x20, 1, inst, I85, "rim" }, { 0x21, 3, inst, 0, "lxi h,%2" }, { 0x22, 3, instw, 0, "shld %a" }, { 0x23, 1, inst, 0, "inx h" }, { 0x24, 1, inst, 0, "inr h" }, { 0x25, 1, inst, 0, "dcr h" }, { 0x26, 2, inst, 0, "mvi h,%1" }, { 0x27, 1, inst, 0, "daa" }, { 0x28, 2, unused, 0, 0 }, { 0x29, 1, inst, 0, "dad h" }, { 0x2A, 3, instw, 0, "lhld %a" }, { 0x2B, 1, inst, 0, "dcx h" }, { 0x2C, 1, inst, 0, "inr l" }, { 0x2D, 1, inst, 0, "dcr l" }, { 0x2E, 2, inst, 0, "mvi l,%1" }, { 0x2F, 1, inst, 0, "cma" }, { 0x30, 1, inst, I85, "sim" }, { 0x31, 3, inst, 0, "lxi sp,%2" }, { 0x32, 3, instb, 0, "sta %a" }, { 0x33, 1, inst, 0, "inx sp" }, { 0x34, 1, inst, 0, "inr m" }, { 0x35, 1, inst, 0, "dcr m" }, { 0x36, 2, inst, 0, "mvi m,%1" }, { 0x37, 1, inst, 0, "stc" }, { 0x38, 2, unused, 0, 0 }, { 0x39, 1, inst, 0, "dad sp" }, { 0x3A, 3, instb, 0, "lda %a" }, { 0x3B, 1, inst, 0, "dcr sp" }, { 0x3C, 1, inst, 0, "inr a" }, { 0x3D, 1, inst, 0, "dcr a" }, { 0x3E, 2, inst, 0, "mvi a,%1" }, { 0x3F, 1, inst, 0, "cmc" }, { 0x40, 1, inst, 0, "mov b,b" }, { 0x41, 1, inst, 0, "mov b,c" }, { 0x42, 1, inst, 0, "mov b,d" }, { 0x43, 1, inst, 0, "mov b,e" }, { 0x44, 1, inst, 0, "mov b,h" }, { 0x45, 1, inst, 0, "mov b,l" }, { 0x46, 1, inst, 0, "mov b,m" }, { 0x47, 1, inst, 0, "mov b,a" }, { 0x48, 1, inst, 0, "mov c,b" }, { 0x49, 1, inst, 0, "mov c,c" }, { 0x4A, 1, inst, 0, "mov c,d" }, { 0x4B, 1, inst, 0, "mov c,e" }, { 0x4C, 1, inst, 0, "mov c,h" }, { 0x4D, 1, inst, 0, "mov c,l" }, { 0x4E, 1, inst, 0, "mov c,m" }, { 0x4F, 1, inst, 0, "mov c,a" }, { 0x50, 1, inst, 0, "mov d,b" }, { 0x51, 1, inst, 0, "mov d,c" }, { 0x52, 1, inst, 0, "mov d,d" }, { 0x53, 1, inst, 0, "mov d,e" }, { 0x54, 1, inst, 0, "mov d,h" }, { 0x55, 1, inst, 0, "mov d,l" }, { 0x56, 1, inst, 0, "mov d,m" }, { 0x57, 1, inst, 0, "mov d,a" }, { 0x58, 1, inst, 0, "mov e,b" }, { 0x59, 1, inst, 0, "mov e,c" }, { 0x5A, 1, inst, 0, "mov e,d" }, { 0x5B, 1, inst, 0, "mov e,e" }, { 0x5C, 1, inst, 0, "mov e,h" }, { 0x5D, 1, inst, 0, "mov e,l" }, { 0x5E, 1, inst, 0, "mov e,m" }, { 0x5F, 1, inst, 0, "mov e,a" }, { 0x60, 1, inst, 0, "mov h,b" }, { 0x61, 1, inst, 0, "mov h,c" }, { 0x62, 1, inst, 0, "mov h,d" }, { 0x63, 1, inst, 0, "mov h,e" }, { 0x64, 1, inst, 0, "mov h,h" }, { 0x65, 1, inst, 0, "mov h,l" }, { 0x66, 1, inst, 0, "mov h,m" }, { 0x67, 1, inst, 0, "mov h,a" }, { 0x68, 1, inst, 0, "mov l,b" }, { 0x69, 1, inst, 0, "mov l,c" }, { 0x6A, 1, inst, 0, "mov l,d" }, { 0x6B, 1, inst, 0, "mov l,e" }, { 0x6C, 1, inst, 0, "mov l,h" }, { 0x6D, 1, inst, 0, "mov l,l" }, { 0x6E, 1, inst, 0, "mov l,m" }, { 0x6F, 1, inst, 0, "mov l,a" }, { 0x70, 1, inst, 0, "mov m,b" }, { 0x71, 1, inst, 0, "mov m,c" }, { 0x72, 1, inst, 0, "mov m,d" }, { 0x73, 1, inst, 0, "mov m,e"
Re: PDP-10 Foonex
> Appeared here: > > http://github.com/PDP-10/FOONEX The web says: "Initial checkin whilst I figure out what format the files are" I took a quick look and guessed a little: #include typedef unsigned long long w36; void pchar(char c) { c &= 0177; if ((c < ' ') || (c == 0177)) c = ' '; putchar(c); } int main(int argc, char* argv[]) { int wnum = 0; int c1, c2, c3, c4, c5; w36 w; int lh, rh; for (;;) { w = getchar(); w <<= 8; w |= getchar(); w <<= 8; w |= getchar(); w <<= 8; w |= getchar(); w <<= 4; c5 = getchar(); if (c5 == EOF) break; w |= (c5 & 0x0f); lh = w >> 18; rh = w & 077; c1 = (w >> 29) & 0177; c2 = (w >> 22) & 0177; c3 = (w >> 15) & 0177; c4 = (w >> 8) & 0177; c5 = (w >> 1) & 0177; printf(" %6o: %9llx %06o,,%06o", wnum, w, lh, rh); printf(" %3o %3o %3o %3o %3o \"", c1, c2, c3, c4, c5); pchar(c1); pchar(c2); pchar(c3); pchar(c4); pchar(c5); printf("\"\n"); wnum += 1; } return 0; } resulted in: 0:737 000700,,670 34 0 0 33 " " 1: 21f30 00,,4174600 0 4 37 30 " " 2: 894e5ba78 422471,,335170 104 123 113 72 74 "DSK:<" 3: 8d3e7ce8a 432371,,747212 106 117 117 116 105 "FOONE" 4: b0fa1c882 541750,,344202 130 76 103 110 101 "X>CHA" 5: 9f4d74d82 476465,,646602 117 123 56 115 101 "OS.MA" 6: 86ed9b972 415666,,334562 103 73 63 71 71 "C;399" 7: 0 00,,000 0 0 0 0 " " [snip] 777: 0 00,,000 0 0 0 0 " " 1000: 774e94374 356472,,241564 73 123 122 103 72 ";SRC:" 1001: 794ecd35c 362473,,151534 74 123 131 123 56 "CH" 1004: 833e9ae9a 406372,,327232 101 117 123 56 115 "AOS.M" 1005: 830d73372 406065,,631562 101 103 56 63 71 "AC.39" 1006: 6e810375a 335004,,033532 67 40 40 67 55 "7 7-" 1007: 9b87cad70 467037,,126560 115 141 171 55 70 "May-8" 1010: 62818b974 305006,,134564 61 40 61 71 72 "1 19:" 1011: 66d5d346c 315527,,232154 63 65 72 64 66 "35:46" 1012: 58822e4d2 261010,,562322 54 40 105 144 151 ", Edi" 1013: e88317940 721014,,274500 164 40 142 171 40 "t by " 1014: 9b361cd1a 466330,,346432 115 115 103 115 15 "MMCM " [and so on] Looks like a tape in core-dump format with a header page. Should be kindof trivial to process these into plain text automagically. --Johnny
Re: PDP-6s at MIT
> Did the original KA10 have XCT too? XCT is present in all PDP-10 processors. From the KI10 and onwards it includes PXCT, since these have the concept of a previous context... Given a pager for the KA10 PXCT would make sense there. > Noel --Johnny