For a vintage computer project, which processor is easier to use? - Page 1
Forum section: electronics / general

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 06:09:43 am
content: I have some vintage computer projects on the sketch boards for a while, but I am still undecided which to pursue first. Which of the two would be easier to use in your opinion: Intel 8088 + Intel 8087, or Motorola MC68HC000? Aspect to be consider includes the simplicity of the system design, and availability of compilers, tools, libraries and existing programs.I don't have a lot of discrete 74HC logic at my disposal, thus I have to resort to the use of CPLD devices (EPM7032 and EPM7128) for glue logic. I am not very good at HDL, and the PLD devices aren't very big, thus the glue logic should be minimal. (Does anyone know anything about 5V FPGA preferably by Altera/Intel? That may allow me to build more complex glue logic down the road, like a programmable peripheral address decoder or a memory management unit)I am not that keen on coding everything in assembler, so availability of some kind of ISO C compiler is almost a must, and the ability to write startup code in as little assembler as possible is a bonus point. I trust the optimizer of a modern compiler much more than the one of an older compiler. Also the toolchain should be free and preferably open source. My software work platform is Linux and macOS so Windows-only tools are out of consideration.

author: DaJMasta
author_rank: Super Contributor
timestamp: July 07, 2017, 06:24:46 am
content: What about something like a Z80 based one? I remember a single board computer with probably less than a dozen chips in a pretty small form factor and it's of similar vintage/speed.If you're willing to delve into FPGAs, there's also the option of making a soft core entirely inside one - not the same if you're looking for a nice hardware project, but it could be a pretty good alternative for complete emulation.

author: C
author_rank: Super Contributor
timestamp: July 07, 2017, 07:11:49 am
content: Have you studied ether of the two?I see the 8088 as an 8-bit computer stretched to a 16-bit instruction set and a 1 meg address space, Segmented memory.From a software side try to create an array with more then 64k of data68000 is 32-bit with a 16-bit external bus. The big cripple was that the 68 pin chip needed more pins to get 8 more address lines out of chip.The 68000 was also built to have many 68000's connected to a busBetter hardware & better software.Think of Why the Z80 & 68000 are still taught in collage classes.

author: Benta
author_rank: Super Contributor
timestamp: July 07, 2017, 07:20:44 am
content: Due to its asynchronous external bus, the 68000 needs more glue than the others. On the other hand, it is far more flexible when it comes to mixing peripherals and memories of different speeds.

author: Unknown
author_rank: Unknown
timestamp: July 07, 2017, 07:52:04 am
content: I have a similar project on my list, with more extensive use of an FPGA for the rest of the system. These are not on your list of chips, but perhaps worth looking at:WDC 65C02(same arch. as Apple II, NES, etc.) or65C816(Apple IIgs, derivative used in SNES)Zilog Z84C00(same arch as Kaypro, TRS-80, etc. Sort of similar to Gameboy)The same old architectures from the mid-70s, all suitably "vintage," but are still in production and are available in modern surface mount packages. The WDC products work at 3.3V, which solves your FPGA voltage issue. Zilog's Z80 successors, theZ180andeZ80, also have 3.3V parts available and support the Z80 instruction set with extensions.All have free C compilers from the vendor (WDC Tools,ZDS) and plenty of learning material available. I found the following books useful:Programming the 65816: Including the 6502, 65C02, and 658026502 Assembly Language ProgrammingZ80 Assembly Language Programming

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 09:06:08 am
content: Quote from: C on July 07, 2017, 07:11:49 amI have studied both of them. My university used 8088/8087 as the platform though...8088/8087 have the benefit of more software available - I can create some environment that runs vanilla MS-DOS and get a lot of software running there, since the IBM PC XT architecture is fairly open and can be replicated on a DIY system, and I can even add some PC AT features like the DS12C887 RTC. Some PC XT compatible graphics and sound system would be difficult to design though, but I think I can make it work using some dual port SRAM and a Cortex-M4F GPU. ISO C targeting 8088 are older though - I don't think there is a compiler supporting full C99.68000 have the benefit of better software support - for example the full GNU toolchain is still available. However I have trouble gluing the memory and other peripherals to the CPU. And I don't think there are ready made software for a custom 68000 system. Is 2MB SRAM + 64kB EEPROM enough for a 68000 system?

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 09:07:19 am
content: Quote from: DaJMasta on July 07, 2017, 06:24:46 amI have considered Z80 but is there any ISO C compiler for it?For FPGAs, I am not good in HDL. I do have a FPGA dev kit but I have very little clue how to get a soft core on it.

author: dexters_lab
author_rank: Unknown
timestamp: July 07, 2017, 09:18:10 am
content: always had a soft spot for the 68k after my time with the atari st & ttthere are plenty of low ic count single board designs for the 68k like the "Flight 68k Training System", i recently sold one on ebay for £43 so they don't cost much and could be a good starting point for your own design.

author: C
author_rank: Super Contributor
timestamp: July 07, 2017, 10:04:09 am
content: Quote from: technix on July 07, 2017, 09:06:08 amThe memory is very easyIf you think about an 8-bit memory board. You are just using two with a common address bus. Separate data bus & control bus for each memory boardVery easy to do. You can easily connect a Z80 to this memory also. A Z80's A0 selects which board of the two.The HP Pascal compiler that HP used internally to create operating systems, compilers & assemblers, If I remember correct was 200kThe system I used back in early 1980's worked fine with 512kHP9826 HP9826Hp had a lot of systems based on 68000, some single user like 9826 some multi=user.The custom in-house system had many CPU boards on VME bus with local bus on cpu board and local expansion connector.As I said, The 68000 was designed to run many CPU's on a bus with very powerful IOYou could learn a lot pushing one to limits unlike other CPU's listed in thread.

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 03:14:54 pm
content: Quote from: dexters_lab on July 07, 2017, 09:18:10 amWhat is the 68681 and 68230 doing there? Are CMOS variants available for those if they are important for SRAM-based system? For the glue logic it is doable in EPM7032.

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 07, 2017, 03:47:14 pm
content: Also, take a look athttp://sdcc.sourceforge.net/Quote

author: dexters_lab
author_rank: Unknown
timestamp: July 07, 2017, 04:05:09 pm
content: Quote from: technix on July 07, 2017, 03:14:54 pmthey are a UART, Parallel IO and timers, there was a training program with that board so i expect small projects to do with serial, parallel and general purpose i/o using them as part of the training

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 04:33:36 pm
content: Quote from: dexters_lab on July 07, 2017, 04:05:09 pmI have 16C550 for UART. The parallel I/O can be problematic though (and that is one thing I don't want to waste CPLD logic elements on.)

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 04:34:23 pm
content: Quote from: colorado.rob on July 07, 2017, 03:47:14 pmI don't have the best experiences with SDCC though...

author: C
author_rank: Super Contributor
timestamp: July 07, 2017, 04:35:33 pm
content: As I stated MEMORY is EASYStart with two static rams 8-bits wide.the CPU works with8-bit valueWhich byte is selected by A0 You have controls to read/write to only one memory chip.16-bit ValueYou have two possible ways in memory,Data is aligned in which read/write 16-bits, use both chips at same time.Data is UN-aligned hardware does two 8-bit reads or writes.32-bit valueYou have two 16-bit operations or 8,16,8 operation.A0 is in UDS, LDS and with these two signals allow all of the above where one chip or both is used.You have an address valid signal(AS) and a data valid(DS)The 68000 works from a NO memory state.Where Z80 and other chips like this assume all memory is fast and exists, you need a slow down signal. Most have no way of signaling NO Memory.68000 works from no memory and times out when no memory exists. The signal is now a speed up(DTACK).This is not a new Idea, The PDP-11 and others used it. Makes having a very long bus very easy. Makes connecting two backplanes with a cable easy. Less distance from CPU is faster.

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 07, 2017, 05:14:22 pm
content: Quote from: technix on July 07, 2017, 04:34:23 pmI've never used it myself (not exactly true, but it has been a *very* long time). What sort of problems did you run into?

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 05:45:01 pm
content: It appeared to me that a lot of you prefers MC68HC000 over Intel 8088. Please keep in mind that *existing software* is also a metric in my consideration. If I built a retro computer using 8088 I can build it in the style of an IBM PC XT compatible with some AT features, complete with a compatible BIOS. This will allow vanilla MS-DOS as well as a good selection of existing DOS programs to work, including games. Heck my system even have a FPU for the most demanding titles.I am not familiar with the 68000-based systems (they are virtually nonexistent in China) so is there any open standards comparable to IBM PC?

author: technix
author_rank: Super Contributor
timestamp: July 07, 2017, 05:50:44 pm
content: Quote from: C on July 07, 2017, 04:35:33 pmFor the 8088 since I am generating the clock from the chipset CPLD anyway I can clock scale as I see fit. A clock prescaler with a read/write configuration register isn't that hard to implement.

author: legacy
author_rank: Super Contributor
timestamp: July 07, 2017, 05:59:03 pm
content: Quote from: technix on July 07, 2017, 05:45:01 pm

author: C
author_rank: Super Contributor
timestamp: July 07, 2017, 06:06:12 pm
content: In my book the 8088/8086 was not a good system. I think it's a waste of time to learn poor hardware. For software you could use an IBM PC XT emulator. Again Software foundation is bad.And you are comparing the 8088/8086 to what could be a multi-user and multi-CPU system.If you build your boards correctly. the extra boards could all be used.You would have a multi-CPU system.Want to play or work with fancy then replace the 68000 with a 68010. This lets you run many operating systems at same time on one CPUSo a lot of old poor XT code VS learning great hardware. If you want copycat then use the VME bus.

author: legacy
author_rank: Super Contributor
timestamp: July 07, 2017, 06:18:56 pm
content: about x86, a friend some time ago wroteQuoteI still wonder WHY? x86 is an ugly architecture, and we have Quark and Edison to play with x86-binaries, so ... I can't really understand.A dude on hackday made a "GameBoyAdv"-like console (well, it's the "shell-like version"), using one of those 486-embedded boards, an Oled LCD, and a battery, and he said that it makes sense since he wants to use x86 binaries (gameconsole emulators?) which don't happen to have a decent opensource equivalent.I can't find the hackaday topic atm, but it's thereedit:found!hereit is!

author: free_electron
author_rank: Super Contributor
timestamp: July 07, 2017, 06:19:27 pm
content: 4004 or, for a real challenge : mc14500 ( a 1 bit cpu)

author: legacy
author_rank: Super Contributor
timestamp: July 07, 2017, 06:21:50 pm
content: Quote from: free_electron on July 07, 2017, 06:19:27 pmLOL, 8008 basic(edit:a dude actually madeitthe code size is 722 bytes)

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 07, 2017, 07:44:58 pm
content: Quote from: technix on July 07, 2017, 05:45:01 pmWhat *existing software* do you want to run? If it's pre-compiled MSDOS applications then you will need to reproduce an entire IBM PC, either at the hardware level or using a custom BIOS to interface to your non-standard hardware (with reduced compatibility). If you are happy to recompile source code then you have more flexibility, but then the CPU choice also becomes less of an issue.QuoteI think you may be underestimating the amount of work required to produce a sufficiently XT compatible machine, particularly for games.My first PC was anactualIBM, but it was not compatible with a lot of PC software because it was anIBM JX. For me it was an excellent choice because I had the technical reference manuals and a desire to learn the PC architecture inside and out. The incompatibilities taught me a lot because I had find out why they occurred and fix them - including hacking into games, writing drivers and making my own hardware. However if youdon'twant to do that it could be a nightmare.The 8088 seems attractive due to its low pin count and compatibility with Intel peripherals, but needs a lot of specific support hardware to become a fully functional XT. And in the end all you have is another crappy XT clone. What's the fun in that?An interesting bit of history -Why the IBM PC Used an Intel 8088"For IBM it was extremely different because this was a project where they let a supplier -- a partner, whatever you call us -- shape the definition of the machine and provide fundamental elements of the machine. When they first came to us, their concept was to do an 8-bit computer. And the project was more notable because they were going to do it so quickly and use an outside company....The novel thing was: could you work with outsiders, which in this case was mostly ourselves but also Intel, and do it quickly? And the key engineer on the project, Lou Eggebrecht, was fast-moving. Once we convinced IBM to go 16-bit (andwe looked at 68000 which unfortunately wasn't debugged at the time so decided to go 8086), he cranked out that motherboard in about 40 days." - Bill Gates.Basically, IBM decided to use the 8088 because it wascheap, and they just wanted something to compete with other 8 bitters. If they had picked the much more powerful 68000 they might still have a hold on the PC market today. As it was they realized their mistake (and tried to correct it with the PS/2 line) too late.QuoteCompared to the PC not as much, but if you want to run existing PC software (including games) you need full PC compatibility anyway so anyotherstandards are irrelevant.OTOH why limit yourself to recreating a boring PC? Be adventurous, learn new stuff, try doing something everybody elsehasn'tdone before!QuoteFew of us code everything in assembler (I am one of the exceptions) but 68000 machine code ismucheasier to work with than 8086. Orthogonal instruction set, no segment registers, few instructions to learn, powerful easy to remember opcodes and neat looking code. Compared to Intel it's a dream. Why don't you try it?QuoteMacOS was originally 68000, and Linux is based on Unix which the 68k instruction set is particularly well suited to. It may be more familiar than you think...Motorola 68000"the 68000 became the dominant CPU for Unix-based workstations including Sun workstations and Apollo/Domain workstations, and also was used for mass-market computers such as the Apple Lisa, Macintosh, Amiga, and Atari ST. The 68000 was used in Microsoft Xenix systems, as well as an early NetWare Unix-based Server."Notable systemsThe original Apple Macintosh and early successors use the 68000 processor as their CPU.The original Apollo Computer workstations, DN100, DN400 and DN600 use two 68000 processors as main CPU.The 1981 SUN workstation and its subsequent commercial spinoff the 1982 Sun-1 workstation used the 68000 as their CPU.The Sega Genesis game console uses a 68000 processor (clocked at 7.67 MHz, 15/7 of the NTSC video colorburst frequency) as its main CPU and the Sega CD attachment for it uses another 68000 (clocked at 12.5 MHz).SNK's Neo Geo.The Commodore Amiga 1000, 2000, 500, 600 and CDTV use the 68000 processor as their CPU.The Atari ST computers use the 68000 processor, initially with a clock speed of 8 MHz, and later switchable to 16 MHz in the Mega STe.CDTV, the world's first compact disc based multimedia platform, uses the 68000 processor as its CPU.The TI-89 Graphing Calculator uses the 68000 processor at 10, 12, or 16 MHz, depending on the calculator's hardware version.The CP System uses the 68000 processor at 10 MHz;

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 07, 2017, 07:56:31 pm
content: Quote from: C on July 07, 2017, 04:35:33 pmUnless you ground DTACK.DTACK Grounded

author: C
author_rank: Super Contributor
timestamp: July 07, 2017, 10:58:08 pm
content: Quote from: Bruce Abbott on July 07, 2017, 07:56:31 pmAnd if you do so you have a lot less capable of system for a very small savings.Easy to replace hardware with software at a cost of a slower system.Easy to leave out hardware and get a less capable system.Also not hard to save when you have more than one CPU in a system.

author: eugenenine
author_rank: Frequent Contributor
timestamp: July 07, 2017, 11:45:47 pm
content: IIRC the VME bus was a standard built around the 68k. You make a backplane then plug in processor boards, memory boards, etc.

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 08, 2017, 01:01:24 am
content: Quote from: C on July 07, 2017, 10:58:08 pmOP asked which processor is easier to use, not which one can go faster or have more CPUs in a system.It has been suggested that the 68000 is harder to use than the 8088 because it has a 16 bit bus and requires generation of a DTACK signal. But if ease of use is the goal then you could use a 68008 (8 bit data bus) and ground DTACK. Of course all your memory and peripherals would then have to run at 2MHz bus speed, but that's not a problem for modern chips. Less expandable than it could be? Sure. But easier.

author: eugenenine
author_rank: Frequent Contributor
timestamp: July 08, 2017, 01:44:37 am
content: Quote from: Bruce Abbott on July 08, 2017, 01:01:24 am6502, has the ease of hardware interfacing of the 8088 and the easier coding of the 68k.

author: westfw
author_rank: Super Contributor
timestamp: July 08, 2017, 07:22:36 am
content: QuoteOh. Well in that case, I think you're screwed. Most of the 68k systems of that era (or at least most of the ones that have had any software preserved) has highly proprietary operating systems that were heavily dependent on "elegant" but proprietary custom hardware. (I'm thinking of Amiga, Macintosh, and the early unix workstations (SUN-1 !))Go with the 8088 (or get a NEC V-20, for some near additional capabilities and nearly identical hardware.) No need for an 8087 (I'm not sure why you included that, since the 68k doesn't have an FPU.) MSDOS and the PC BIOS are at least designed for portability across "similar" hardware, and there has been continued development of things like FreeDOS.Other possibilities for retro-computing with some hope of running old software include a Z80 running CP/M or a 6809 running OS-9. (I'm particularly fond of this recent 4-chip Z80 hardware:https://hackaday.io/project/19000-a-4-4ics-z80-homemade-computer-on-breadboard- it's been made to work by several people in several formats, and is currently running CP/M, and Forth, and "ROM" BASIC. The basic design might work for other CPUs, too...) (Hmm. There was an OS-9 for 68k; I'm not sure if it ever got much traction...)6502 has similar problems to 68k - popular software (C64, Apple ][, Atari) was dependent on custom hardware. In general, when you look at classic personal computers, there was a LOT of custom hardware, and most of the "really clever" programming came from manipulating that hardware, rather than being generic xx-cpu software. (It's a bit depressing.)(Keeping in mind that while most of that "personal computer revolution" was happening, I was off programming mainframes and not paying THAT much attention. But that's how I remember things...)

author: technix
author_rank: Super Contributor
timestamp: July 08, 2017, 01:30:48 pm
content: Also if I want to build a PC XT compatible there are a lot of reference material and test code out there. The system design can be checked against the source code of DOSBox. The BIOS code can be checked against the released original IBM BIOS as well as code from SeaBIOS and coreboot projects. And a test boot of vanilla MS-DOS 6.22 can be used to exercise various components.

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 08, 2017, 03:51:55 pm
content: Quote from: technix on July 08, 2017, 01:30:48 pmThen use an 8088. Why even consider 68000 if that's what you want to do?

author: amyk
author_rank: Super Contributor
timestamp: July 08, 2017, 04:38:35 pm
content: Why not a 486/AT clone, then you can actually run more interesting software:http://www.s100computers.com/My%20System%20Pages/80486%20Board/80486%20CPU%20Board.htm

author: technix
author_rank: Super Contributor
timestamp: July 08, 2017, 04:44:30 pm
content: Quote from: Bruce Abbott on July 08, 2017, 03:51:55 pmI have the 8088 already, but got a bit stumped at how to hook up 8088, 8087, 8288 and 8284 into the actual CPU complex, how to hook the CPU complex to the platform controller CPLD, how to interpret the signals from the CPU complex, and how to make the CPLD-based chipset work.

author: Nusa
author_rank: Super Contributor
timestamp: July 08, 2017, 05:53:09 pm
content: You're mostly asking questions that are easily answered with basic search skills.Assemblers for all of the above? Easily found. Including plenty of cross-assemblers written in portable C, since these chips predated the PC and binaries were often compiled with whatever computer was available.How to build a 8088 based XT clone? Easily found, including schematics for single-board computers. Ditto for the other CPU's mentioned.If the real goal is simply to have a working XT clone, the cheapest route is still to just buy one. Plenty of working antiques out there for not that much money. If you want original glue logic IC's, look for XT/XT clone motherboards, as is/for parts ones will be cheaper. Often the chips are even socketed.

author: amyk
author_rank: Super Contributor
timestamp: July 09, 2017, 03:07:32 am
content: Quote from: Nusa on July 08, 2017, 05:53:09 pmYou can even get the schematics of the real thing:http://www.minuszerodegrees.net/manuals.htm#IBM

author: westfw
author_rank: Super Contributor
timestamp: July 09, 2017, 06:02:58 am
content: (It's one of the things that annoyed me about that TV series "Halt and Catch Fire." The trope that the IBM PC was this secret bit of high technology that it took some super-hackers to "reverse engineer." When in fact the IBM was a horribly BORING hardware design, most of which was published. ("published" but not at all "open source." IIRC, the hard part was finding engineers who hadn't been "contaminated" by looking at any of the published material.)There were even x86-based personal computers that ran MSDOS, but were NOT IBM-PC compatibles (eg the HP-150; the first PC I owned. (Not counting the CP/M system that never got more than half-assembled.))

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 09, 2017, 10:09:22 am
content: Quote from: technix on July 07, 2017, 06:09:43 am68000What is your end goal?

author: rstofer
author_rank: Super Contributor
timestamp: July 10, 2017, 05:07:40 pm
content: In my view, the EASIEST chip to use is the Intel 8085. It is a superset of the 8080 but is static CMOS so there is no minimum clock rate. Back in the early '80s, I built several projects with this chip and its brethren. Given the availability of static CMOS RAM in 64kx8, the memory system is quite simple.You can run CP/M on such a system with a little effort. Interfacing a Compact Flash device is quite easy.CPU + AddressLatch + CMOS RAM + EEPROM + Memory Map Logic (map EEPROM into memory space at startup, map it out when some condition occurs) + Address Select Logic for IO devices + a couple of UARTS and you're good to go.Or, just buy one of the Zilog eZ80F91 boards - they run at 50 MHz and have all the required memory. Add a daughter card containing the Compact Flash and a couple of UART->USB devices (or one of the newer quad UART->USB) and you're up and running on CP/M with 16 logical drives. CP/M RIPS at 50 MHz.

author: Unknown
author_rank: Unknown
timestamp: July 11, 2017, 05:10:59 am
content: Quote from: rstofer on July 10, 2017, 05:07:40 pmWDC's 65C02 also has this helpful property.Quote from: rstofer on July 10, 2017, 05:07:40 pmPlus Ethernet with a BSD sockets implementation. Definitely nice little boards, although I wish the modules were a bit cheaper.I didn't realize it was easy to get CP/M going on them. Interesting!

author: technix
author_rank: Super Contributor
timestamp: July 11, 2017, 07:05:24 am
content: A lot of you are suggesting 68000 for this vintage computer project. I don't have the required peripheral chips yet (and I doubt whether my 8-bit USB and Ethernet chips would work on a 16-bit bus) so please suggest chips for UART, display output stack, Ethernet and USB-OTG. Or is there any CMOS variant of 68008 (which have a native 8-bit bus)

author: Nusa
author_rank: Super Contributor
timestamp: July 11, 2017, 07:44:34 am
content: Quote from: technix on July 11, 2017, 07:05:24 amThe 68008 in any varient hasn't been manufactured for over 20 years, nor was it ever a big seller. I don't know how easy it is to find old stock.Using a 16-bit data bus on an 8-bit device is trivial. You just use the lower 8 bits. You do, of course, still need the full address decoder for the chip select line.

author: legacy
author_rank: Super Contributor
timestamp: July 11, 2017, 07:54:41 am
content: Quote from: rstofer on July 10, 2017, 05:07:40 pmyup, 6800 : 68hc11 = 8080 : 8085I believe

author: technix
author_rank: Super Contributor
timestamp: July 11, 2017, 09:09:49 am
content: Rounding up again.* Among the two options I mentioned, 68HC000 is easier to use.* It is okay to use 8-bit peripherals with a 16-bit bus, by hooking the chips to just the low byte. Drivers have to be made flexible enough to accommodate this.* 2MB of SRAM is enough for a 68000 retrocomputing platform.* When using 68000, forget existing code.

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 11, 2017, 09:28:16 am
content: Quote from: technix on July 07, 2017, 06:09:43 amThis thread seems to be oscillating wildly. What do you actually aim to achieve?If you want cool and vintage... Cosmac 1802 (if it was good enough for the moon landing), 6502 (PET) or Z80 (Jupiter ACE?). 1802 and 6502 are very simple especially with SRAM. Z80 slightly more complex if you use DRAM.For the time 6800 and the 68000 were cool, the 68000 being used in quite a few communications systems. The 6800 was surplanted by the 6502 which was much much cheaper. TBH they are just a bit dull IMHO. Also 8080, 8085... yawn... what came after was far cooler.Or... at a tangent... how about re-creating a classic arcade game (they often had multiple processors)... something along the lines of...http://www.fpgaarcade.com/replay/

author: Fungus
author_rank: Super Contributor
timestamp: July 11, 2017, 09:47:30 am
content: Quote from: C on July 07, 2017, 07:11:49 amNot if it's a 68008.PS: Z80 is probably easiest.Quote from: Nusa on July 08, 2017, 05:53:09 pmBuilding an XT clone is a LOT of work.I wouldn't build anything with the goal of "running old software". Nobody will be impressed and there's emulators for that.If I was going to build a retro computer I'd dream up a new one.

author: westfw
author_rank: Super Contributor
timestamp: July 11, 2017, 09:52:54 am
content: QuoteThis is also true of the current CMOS Z80 chips (Z84c00) (and I think of a lot of the more recent CMOS versions of most "classic" chips, like the 80c88 you can get from Intersil (sticker shock!), the 80c18x (might be an interesting choice; has some built-in features that make systems easier to build, but will still run MSDOS), etc)

author: rstofer
author_rank: Super Contributor
timestamp: July 11, 2017, 02:35:38 pm
content: It's pretty tough to stop this thread from oscillating when the original topic seemed to be 'vintage' and then Berkeley Sockets comes up.It comes down to a question of "how vintage?". Mid '70s or mid '80s (perhaps mid '90s). To me, the Altair 8800 ('75) defines 'vintage'. Everything else is a "Johnny come lately". OK, I stretch it to maybe include the Apple II and certainly the 8085 (6502, 1802, Z80). The introduction of the IBM PC in 1980 pretty much wiped out the idea of 'personal computing' and started 'just commercial computing'. Anybody could run an IBM PC. With the Altair, it took a certain amount of understanding. The Apple II was a lot easier to understand.So, which vintage are we talking about?

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 11, 2017, 03:03:05 pm
content: Vintage to me is anything that was built before you were born or maybe existed when you were a young child. If the OP is in their 20s, vintage isn't that long ago.If you're doing "vintage", why not do something interesting like a PDP-11?https://opencores.org/project,w11

author: rstofer
author_rank: Super Contributor
timestamp: July 11, 2017, 04:34:27 pm
content: Quote from: colorado.rob on July 11, 2017, 03:03:05 pmBut I predate the Eniac!ETA:That PDP-11 project seems like fun. I have the Digilent board...The ONLY thing that makes these projects worth the effort is if there is software to run. In the PDP-11 case Unix V5 runs. You can't expect better than that!The IBM1130 software is available and it's pretty easy to build a system using the information provided in the Functional Characteristics manual. It won't be cycle accurate but it will run at 50 MHz whereas the original that I used ran at 400 kHz. Pretty good speedup.http://ibm1130.org/Way back in '70, this was the first computer I ever used or even saw! It helped immensely getting through undergrad using the IBM Electronic Circuit Analysis Program (similar to LTspice but with punched cards and no built-in components). For school work, it was all about the plotter. There's nothing like an accurate Bode' Plot to attach to homework.I still use my FPGA implementation whenever I feel the need for Fortran IV and a plotter!

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 11, 2017, 04:43:20 pm
content: Quote from: rstofer on July 11, 2017, 04:34:27 pmhttps://en.wikipedia.org/wiki/Jacquard_loom

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 11, 2017, 06:02:19 pm
content: Quote from: rstofer on July 11, 2017, 02:35:38 pmI think you will find this thread was 100% socket free until you mentioned it?https://www.eevblog.com/forum/microcontrollers/converting-struct-in-to-array-changing-byte-order/msg1248367/#msg1248367

author: rstofer
author_rank: Super Contributor
timestamp: July 11, 2017, 06:35:25 pm
content: Quote from: NivagSwerdna on July 11, 2017, 06:02:19 pmReply #40:https://www.eevblog.com/forum/microcontrollers/for-a-vintage-computer-project-which-processor-is-easier-to-use/msg1253379/#msg1253379True, it was tangential to my describing the eZ80F91 CP/M project...I'm starting to like that PDP-11/70 project...

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 11, 2017, 07:13:38 pm
content: Quote from: rstofer on July 11, 2017, 06:35:25 pmNow you are talking. Just need to add a VT100 with smooth scroll turned on. Software wise you just need DECUS Adventure and for fun TECO.

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 11, 2017, 07:35:23 pm
content: Quote from: rstofer on July 11, 2017, 02:35:38 pmAnything from the 1980's is now 'vintage'.When the IBM PC was released in 1980 it had a keyboard, 64k RAM, and atape interface. Everything else was an option. You could have one or two 360k floppy drives, but the only graphics card available was monochrome text. Compared to other 'personal' computers of the day it sucked, but it had one sure-fire selling point - the letters I B M.The other reason the PC became so popular is that it was incredibly easy to reproduce. Clone manufacturers quickly switched from making Apples to PCs, which they were able to sell for half the price of a real IBM. Since almost everything was an option, 3rd party manufacturers had an enormous potential market to exploit. But it wasn't until the 1990's that it took over from 'personal' computers, because until then it reallywasjust a 'business' machine.I think the main reason old PCs are often not considered 'vintage' is that a modern PC can still (for the most part) run the same software. And the early IBM wasn't really a computer anyway - it was little more than a motherboard with CPU and RAM, stuffed full of 3rd party cards. With so many upgrade options and the continually advancing specifications, there isn't any point at which can you saythisPC is vintage, but that one isn't.It also doesn't help that so many of them are still around. I have 5 working PCs of various vintage, a few more that just need a new power supply or hard drive, 4 laptops, and a cupboard full of parts. Time for a cull!

author: rstofer
author_rank: Super Contributor
timestamp: July 11, 2017, 07:46:47 pm
content: I walked past a PDP-11 one time and that's as close as I ever got. Been in the same room with a couple of Vaxen...I'm just not a PDP-11 guy but since I already have the board(s), it might be fun to install the Xilinx toolchain under Debian Linux and see how it works out. I rather like the author's idea of using a peripheral server under Linux. I could see converting my IBM1130 to do the same thing.I don't have the Nexys3 board which will give much faster USB transfers and also has more onboard SRAM but if I can get the system running on a Spartan 3 Starter Board, I will know if I like it enough to part with $270 on an obsolete board (if they still have them).

author: rstofer
author_rank: Super Contributor
timestamp: July 11, 2017, 08:08:09 pm
content: Quote from: Bruce Abbott on July 11, 2017, 07:35:23 pmSee, I wouldn't consider an IBM PC (beyond, maybe, the original) to be "vintage". By the time IBM got in the business, there were dozens of S-100 machine types already running (Altair, CompuPro, Cromemco, etc). The 8080 machines had UCSD Pascal two years before the IBM PC was introduced and this finally allowed these machines to do useful business computation.Furthermore, current machines are simply evolutionary, not revolutionary. The Altair 8800 was revolutionary and I suppose the Apple II fits that concept as well. Perhaps even the Commodore Pet... Maybe, if I was pushed, I would include the original IBM PC because it introduced a new bus structure that was a vast improvement over S-100. But nothing beyond that...I still think the PC-AT keyboard is the best keyboard ever invented.

author: Unknown
author_rank: Unknown
timestamp: July 11, 2017, 08:49:00 pm
content: Quote from: rstofer on July 11, 2017, 02:35:38 pmWow, I did not realize that offhandedly mentioning the socket library was so disruptive. BSD sockets came out in 1983 with 4.2BSD by the way. As in, run on systems like the VAX 11/780, of similar vintage to the PDPs you are discussing. I never had a PC older than an Apple ][e, but I do still have (and use) a lot of old UNIX systems like VAX, Alpha, various generations of Sun, SGI, etc. The concept of networking came around a lot earlier for multiuser systems than it did for personal computers.As you point out, vintage has a lot of personal meaning. I'm sure to a lot of people even a Pentium II with a 56k modem is "vintage" now. It is pretty hard to decide the dividing line between what is vintage and what is not, since so many things that were created in the 70s-90s are still in use, virtually unchanged. I think of vintage as anything on display on the 2nd floor of theLiving Computer Museum, which by the way is worth a visit, unless mentioning this is also too off topic and is going to send someone into a tizzy.As far as these projects go, I generally just think of it as trying to construct your own computer around an older architecture (e.g. 68k, 6502, Z80, et. al.). Some people want to recreate the functionality of an entire original machine, some people want to use an original ceramic chip and discrete logic with a rat's nest of breadboard wires, some people (like me) just want to use the old CPU and the rest can go. I have a 6502 game system project queued up where I want to use a modern FPGA as an MMU to do paged memory, use either an FPGA or a DSP for a tiling and sprite engine, have coprocessors for USB mass storage, and output to HDMI at 720p. I enjoy the mix of old and new. I don't feel the need to go back to cassette tape program storage or to try and faithfully rebuild an 8" floppy drive, but I can still enjoy writing the "controlling software" in 6502 assembly, having to be creative with use of memory and cycles.For technix, the original poster, it looks like he already has some older chips on hand that he wants to find a use for but also wants to incorporate modern components; e.g. the mention of USB OTG and Ethernet.

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 11, 2017, 08:54:16 pm
content: If you want to do something legacy from the 80's, how about a Cray? I mean, those things just *looked* cool.http://www.chrisfenton.com/homebrew-cray-1a/

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 11, 2017, 09:57:22 pm
content: Quote from: Bruce Abbott on July 11, 2017, 07:35:23 pmIn my first job after university I worked for a company that amongst other things developed (token ring) network cards for PCs... our design was coming along nicely and then IBM moved to the IBM PS/2 and patented/licenced the new card bus (MCA).... we received our first real PS/2 and within minutes of arriving we had completely dissembled it... to our dismay it didn't work when we reassembled it.... didn't like the battery backup being removed or something like that. But it wasn't long before either the bus was licenced or legally challenged... can't remember the details. This thread is making me feel very old!

author: rstofer
author_rank: Super Contributor
timestamp: July 11, 2017, 11:59:02 pm
content: There is also a Computer History Museum in Mountain View (Silicon Valley) that is well worth the trip.

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 12:31:33 am
content: For me the vintage part is the CPU core complex design and maybe some code (if the hardware is built to spec with some existing standards like IBM PC XT.) I am fully okay with using modern parts for peripherals and system bus (the Intel EPM7128 CPLD system bus controller, WCH CH375 USB OTG controller, and WCH CH395 Ethernet controller.) And I am born in 1993 so anything in the 80s are vintage to me, not just the original IBM PC XT (or AT)

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 12, 2017, 12:34:52 am
content: How many of you geezers feel old now?!?

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 12:48:56 am
content: Quote from: colorado.rob on July 12, 2017, 12:34:52 amFor my experiment environment it is almost entirely legacy free (No PS/2, no VGA, no RS232) so I cannot even use true vintage designs (or I won’t be able to even write the disks for or communicate with the old machine from my usual workstation.)I cannot even reuse the display of my computer with the adapter chips as there is no way a vintage computer can drive a 4K 2160p60 monitor.

author: cdev
author_rank: Super Contributor
timestamp: July 12, 2017, 12:55:29 am
content: The number one thing I remember from that era was that the older x86 family of chips had an unbelievable number of workarounds for this or that that needed to be incorporated into code (and of course the tools that exist today were absent)the kludges made the early intel x86 platform quite painful to use compared to say the motorola 68000.

author: NorthGuy
author_rank: Super Contributor
timestamp: July 12, 2017, 01:19:16 am
content: Quote from: technix on July 12, 2017, 12:48:56 amWhy vintage? Wouldn't it better to design your own?

author: rstofer
author_rank: Super Contributor
timestamp: July 12, 2017, 01:35:20 am
content: Quote from: cdev on July 12, 2017, 12:55:29 amMaybe have the video come out as R-G-B and use a TV set for a display. Are you sure your monitor doesn't have VESA VGA capabilities? There are a number of monitors around that can handle VGA or Composite Video. I have a little 7" monitor from AdaFruit that might be workable:https://www.adafruit.com/product/16675-1/4" floppies are kind of a PITA. It is dead simple to add a Compact Flash disk to just about any bus oriented system. If you have a disk image, you can use the Linux dd command to write the image. If you want to create 16 drives like I did for the Z80 system, you can write some code to build empty drive images in a large file, copy in the real image for the first drive and then write the entire file to the Compact Flash with one command. Somehow I got the CP/M image plus Kermit loaded on the first drive and I transferred everything else from the 8" floppies on my CompuPro Z80 machine.

author: Nusa
author_rank: Super Contributor
timestamp: July 12, 2017, 01:50:12 am
content: Quote from: technix on July 12, 2017, 12:48:56 amI don't feel like a geezer yet, but I am getting up there. I've experienced most of these CPU's the first time around as a Computer Science student and professional, so I don't feel any great urge to recreate them myself.PS/2 and VGA didn't exist in the vintage era you're trying to replicate, so why would you need them now? RS232 was, and it's easily adapted to USB with a cheap adapter cable. Which means you can use any modern computer as a serial terminal, which includes most smartphones. If you want emulations of VT100 terminals or the like, those exist. In any case, that gives you the sort of interface you ACTUALLY HAD back in the day. (Well, it might have been an even older paper terminal TTY with paper tape reader/writer setup, but unless you actually own that antique you can forget that.)If you're truly vintage, all the computer itself will have is idiot lights, toggle switches, and UART or RS232 port. Part of the experience, if you aren't old enough to have lived it, is being able to stop the computer clock, single-step programs, and modify memory locations using nothing but the lights and toggle switchs on the computer panel.

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 07:51:47 am
content: Quote from: Nusa on July 12, 2017, 01:50:12 amTo me PS/2 and VGA are already vintage - in contrast my home workstation is built around USB and DisplayPort for peripherals and display, and a further upgrade to Thunderbolt 3 is planned. I know that RS232 can be easily adapted (and for homebrew boards I would just build the USB to TTL UART chip right in there.)For me since there is a CPLD with JTAG boundary scanning in the system bus and generates the processor clock, I can skip the toggle switches and idiot lights and use the boundary scan features of the CPLD as a makeshift JTAG debugger.

author: Muxr
author_rank: Super Contributor
timestamp: July 12, 2017, 07:55:28 am
content: I always found 6502/6510 to be pretty easy, in fact in college they used 6502 to teach us assembly. I was doing x86 assembly by that point.

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 07:57:45 am
content: Quote from: westfw on July 11, 2017, 09:52:54 amI found some 80286 and 80287 though. Are those any good?And I also found someone selling Am486DX4-75 in QFP package...

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 07:59:10 am
content: Quote from: Muxr on July 12, 2017, 07:55:28 amMy school had 8086 real mode assembly and later ARM9.Is ARM9 anywhere near vintage?

author: Muxr
author_rank: Super Contributor
timestamp: July 12, 2017, 08:05:14 am
content: Quote from: technix on July 12, 2017, 07:59:10 amit's decently old I suppose but it's a far cry from the simplicity of the 8bit CPUs from the 80s.

author: Unknown
author_rank: Unknown
timestamp: July 12, 2017, 08:41:18 am
content: Quote from: technix on July 12, 2017, 07:57:45 am80286 is a bit of an oddball in the x86 lineup. If I recall correctly, it is the first processor with pmode and a page descriptor table, but it is also only a 24-bit address space. I think it was also missing a lot of features compared to 386 32-bit pmode.If you like x86 assembly and want a quirky x86 chip I guess you could use it? But if not, I'm not sure what other redeeming features it would have.

author: westfw
author_rank: Super Contributor
timestamp: July 12, 2017, 09:23:36 am
content: QuoteUgh. The 286 was annoying. Just when all the mainframes, minicomputers, and 68k unix systems had decided that "paging" was The Way To Do Memory Managment, Intel released the 286 with "segmentation", implemented in such a way as to make linear addressing of large amounts of memory (more than 1M?) impossible (nearly impossible?) IIRC, it didn't do much more beyond "faster 8086" and didn't last very long before the (much better) 386 came out. Most of the 286 systems had 1M of RAM, but it was slightly easier to use than trying to have that much on an 8088 (once you considered that you also need BIOS, and IO cards, and such.)

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 10:07:53 am
content: Quote from: Muxr on July 12, 2017, 08:05:14 amThere are reasonably integrated ARM9 chips though, like AT91SAM9260 or IMX233 or those near ubiquitous S3C2440 modules. Although I don’t like S3C2440 to a passion for its lack of mainline Linux support (in contrast Allwinner has some mainline Linux support and Microchip have near perfect mainline Linux support)

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 12, 2017, 10:18:39 am
content: Quote from: technix on July 12, 2017, 07:59:10 amNope. The ARM 1 co-processor attached via 'tube' to a BBC Micro B could be considered vintage.Early Acorn Archimedes also definitely vintage. (ARM3?)

author: legacy
author_rank: Super Contributor
timestamp: July 12, 2017, 04:01:24 pm
content: Quote from: NivagSwerdna on July 12, 2017, 10:18:39 am&& ARM RISCPC/600, with StrongARM CPU boardAt least it also supports a PC-guest card able to to run MSDOS

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 12, 2017, 04:30:12 pm
content: That looks far too modern.http://www.sunrise-ev.com//membershipcard.htm

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 05:48:56 pm
content: Quote from: legacy on July 12, 2017, 04:01:24 pmI don’t think I can find those chips, but coupling an ARM to an Am486DX4-75 is an interesting idea. That is not vintage enough though.Also since both the 486 and ARM9 are supported by Linux and mainline Linux have a heterogeneous core scheduling the support can be interesting.

author: legacy
author_rank: Super Contributor
timestamp: July 12, 2017, 05:55:38 pm
content: Well ...

author: rstofer
author_rank: Super Contributor
timestamp: July 12, 2017, 06:21:06 pm
content: Quote from: legacy on July 12, 2017, 05:55:38 pmSo, "vintage" is now "last Thursday"...What about a Zynq-7000 with dual ARM9 cores and perhaps enough FPGA fabric to implement a Cray-I as the scheduler.

author: legacy
author_rank: Super Contributor
timestamp: July 12, 2017, 07:47:51 pm
content: Quote from: rstofer on July 12, 2017, 06:21:06 pmI was commenting the idea of putting a 486 chip coupled with an ARM chip, oh, with the benefit of linux, of courseConsidering the complexity of the whole .. well, it's hundred light years far from the concept of fun.About fpga, well ... they save PCB problems, but I would suggest neither complex nor big projects since they usually are time consuming, with a progressive probability of being frustrating.

author: legacy
author_rank: Super Contributor
timestamp: July 12, 2017, 08:30:05 pm
content: Quote from: NivagSwerdna on July 12, 2017, 04:30:12 pmUsually vintage is triggered on something that is at least 10 years old, but you miss that computers don't measure the time in human yearsHuman-years and computer-years are in log2 relation, and since "vintage" is a human concept ... well you can measure the equivalent "vintage factor" applied to computers.1 human-year, is 2 computer-years2 human-years, are 4 computer-years3 human-years, are 8 computer-years4 human-years, are 16 computer-years5 human-years, are 32 computer-years6 human-years, are 64 computer-years7 human-years, are 128 computer-years8 human-years, are 256 computer-years9 human-years, are 512 computer-years10 human-years, are 1024 computer-years11 human-years, are 2048 computer-years12 human-years, are 4096 computer-years13 human-years, are 8192 computer-years...20 human-years, are 1M computer-years21 human-years, are 2M computer-years22 human-years, are 4M computer-years23 human-years, are 8M computer-years24 human-years, are 16M computer-years25 human-years, are 32M computer-years26 human-years, are 64M computer-years27 human-years, are 128M computer-years28 human-years, are 256M computer-years29 human-years, are 512M computer-years30 human-years, are 1G computer-years31 human-years, are 2G computer-years32 human-years, are 4G computer-yearsTherefore everything that is older than four human-years is "computer-vintage"CorollaryMesozoic era, 66 million human-years agoEverything in computer science that is older than 26 human-years is ... "computer-jurassic" as well as a fossil of the Mesozoic eraNotehow to calculate log2(x)log2(x) = log10(x)/log10(2) = ln(x)/ln(2)

author: brucehoult
author_rank: Super Contributor
timestamp: July 12, 2017, 08:39:48 pm
content: I think you have it the wrong way about. That would imply computer progress was incredible in the distant past.More like: there's as much difference between a computer from today and a computer from 2007 as there is between a computer from 2007 and a computer from 1997, or between a computer from 1997 and a computer from 1987, or between a computer from 1987 and a computer from 1977.This is logarithmic.

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 12, 2017, 08:57:13 pm
content: Growth in raw computing power over the past decade, save for some niche areas, has been rather stagnant. The difference in computing efficiency is where things have really changed over the past decade.

author: legacy
author_rank: Super Contributor
timestamp: July 12, 2017, 10:02:23 pm
content: Moore's law, the number of transistors in a dense integrated circuit doubles approximately every two yearsMore transistors, more complexity, more features ... more cores. I was kidding on computer shapes of things older than 26 years: don't they look like fossil reptiles of the Mesozoic era, often reaching an enormous size?Those called "big iron boxes", they are big size, heavy, and with a little brain. Oh, and a modern cell phone is thousand times faster with billion more ram.A SGI machine like Onyx eats in order ot Kilowatt, it's big, bloated full heavy metal, and .... it's not able to play doom.From Lord Crimson to a modern iPhone I see progress like from a trex reptil to a ape able to move his first step into the art of mathComputers are a pure math application which is able to walk on its legs. Next step: the singularity, which we call A.I. as the first computer aware that we, human beings, wanted to collect computers for vintageI say "wanted" because in a short time A.I. will succeed and overcome our biological limits. I believe they will consider us like ... apes eating bananas, so they will probably want to collect our fossilized bones for vintage.100 years in the future ... - those 3D models, acquired on fossils bones by a laser scanner and rebuilt on 3D models, were human beings around 0x0000FF312A4B23DE (2054 DC) ... look at their skulls, there was no plug since they were unable to connect to the Matrix without the use of external devices which they called "smartphones" and "laptops" -Ohhhh, all machines are now surprised -so primitive, those human beings-

author: technix
author_rank: Super Contributor
timestamp: July 12, 2017, 11:29:22 pm
content: Quote from: rstofer on July 12, 2017, 06:21:06 pmNope. For me the definition of “vintage” here is still rigidly “released or announced in 1992 or earlier” since I am born Q1 1993. And only the processor core complex counts towards this limitation.

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 13, 2017, 07:13:07 am
content: Quote from: technix on July 12, 2017, 11:29:22 pmI got my last new 'vintage' computer - anAmiga 3000- in 1991. It cost NZ$7200, about the same price as a Compaq 386DX with similar specs. I eventually upgraded it to a 50MHz68060and 16 bit graphics card. However by that time Windows 95 and Pentium PCs had arrived, and with the demise of Commodore the Amiga could no longer keep up. I stupidly sold it for a few hundred dollars - now A3000's are truly vintage and worth a mint!

author: legacy
author_rank: Super Contributor
timestamp: July 13, 2017, 09:41:59 am
content: The above theory, computers evolution will be faster since they aren't limited by biological limits, is perfectly shown in movies like:Automata(2014)!yup, no nice pinups there(1), but ... you have a female sexybot in the castinga few humanoids robots by Honda, and Antonio Banderas is a good actor(1)Melanie Griffith ...Birgitte Hjort ... maybeif you are looking for a few hours of good entertainment on computers, I recommend this movie

author: brucehoult
author_rank: Super Contributor
timestamp: July 13, 2017, 01:35:23 pm
content: Quote from: technix on July 12, 2017, 11:29:22 pmWow, recent perspective!Linux was already out. NeXT (which became OS X and iOS) had been out several years. Windows NT was in public beta and on the verge of release. C++ was already widespread. Perl and Python were already out. Java was in development. The Apple Newton handheld with ARM CPU had been demoed at CES.Very little in our computer landscape has changed other the speed, capacity and price since 1992. Web sites. Mobiles with radio connectivity to internet. The move from 32 to 64 bit.I think for me "vintage" will always refer to pre IBM PC and Macintosh.

author: colorado.rob
author_rank: Frequent Contributor
timestamp: July 13, 2017, 06:00:55 pm
content: Quote from: brucehoult on July 13, 2017, 01:35:23 pmI think it means something more than that.Vintage:1. the year or place in which wine, especially wine of high quality, was produced. 2. relating to or denoting wine of high quality.Not all wine is vintage. No bottle of Boone's Farm is "vintage". Same goes for computers. And, as with the Boone's Farm example, popular does not equate to vintage.A vintage computer has to be historically significant. The first IBM PC is vintage, most other PCs are not. The first Macintosh is vintage, most others are not. The NeXTcube is certainly vintage. I'd argue that the first iPhone and HTC Dream are both vintage -- and they're less then 10 years old.

author: legacy
author_rank: Super Contributor
timestamp: July 13, 2017, 07:32:06 pm
content: Quote from: Bruce Abbott on July 13, 2017, 07:13:07 amAmiga is crazy.I mean things like a "towerized"(1) A1200 with CyberStorm CPU accelerator, RAM expansion to 128MByte, mediator PCI to plug a PCI-video card, a PCI-sound-card, a SCSI expansion, and a couple PS/2 mouse and keyboard adapters.At the end it costs something like 2K euro and ... it's not Amiga, it's a strange beastThe above photo shows a "PowerPC" accelerator that mounts two CPUs, a classic 68k and a PPC.Does it make sense?(1) they want to put the Amiga A1200's motherboard inside a tower PC-like case, since the motherboard is neither AT-form factor nor ATX, they need to made a custom case, usually adapting a PC case.Of course there alsokit, but they are not cheap.

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 13, 2017, 08:21:16 pm
content: Quote from: colorado.rob on July 13, 2017, 06:00:55 pmThe meaning of a word is determined by usage, not the dictionary definition. To gauge whatmostpeople consider to be a 'vintage' computer, check out the listings oneBayand websites such as theVintage Computer Federationandoldcomputers.net.QuoteBut pretty much any home computer made in the 80s and 90's is considered 'vintage'. Why? Because that was the time when real innovation was occurring and each machine had its own unique characteristics - goodorbad - that made it significant.Modern PCs will never be 'vintage' because they are just a platform to run mainstream software on, and none has any unique and interesting feature that separates it from the others. this is the real reason that PCs and Macs lose out in the 'vintage' stakes - not due to popularity or quality, but because they areboring- by design.

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 13, 2017, 08:56:27 pm
content: Quote from: legacy on July 13, 2017, 07:32:06 pmIn the 1990's I ran a computer shop that sold Amigas and PCs, and I also helped a friend with his electronic repair business. He had an A1200 which he preferred, but needed a PC for some stuff. We put his A1200 motherboard in a tower case along with a PC motherboard, and connected the two together via serial ports so they could share files and use the same keyboard, mouse and monitor. It worked brilliantly.Without that he would have needed two separate setups which was impracticable, and I'm guessing the PC would have won out by necessity. 'Towerizing' an A1200 may seem crazy, but is actually a good way to extend its life without losing most of its unique characteristics.QuoteThe reason for having all those extras bolted onto an A1200 is to run the latest AmigaOS and new software titles that require it. Does it makes sense? Depends on what you want to do. Certainly it doesn't make sense financially - but that's not what 'vintage' computing is about.My own A1200 is languishing in the corner right now because I can't be bothered spending that kind of money on it. Yet I have spent thousands on older machines that I didn't have back in the 90s. My current project involves thecrappiest home computer everfrom that era - and I am having a ball getting it todostuffthat was never imagined.

author: eugenenine
author_rank: Frequent Contributor
timestamp: July 13, 2017, 09:39:08 pm
content: I did the same with an Amiga 500, I had it in the left of a case and a 286 then later a 386 in the right. I was working on a backplane for the bottom that would have Amiga 2000 slots, the pinouts were the same between the 2000 expansion slots and the one on the side of the 500 but the 500 just had a few less power and ground pins.

author: Bruce Abbott
author_rank: Frequent Contributor
timestamp: July 13, 2017, 10:39:29 pm
content: Other crazy stuff I did:-Put aZX81inside the metal case of an amber-screen monitor. Had a backplane with 4 slots, and a proper keyboard made from individual key switches. Built an interface card to connect the ZX81 to an IBM 5444 removable cartridge hard drive. 2.4MB of storage per 14" disc! The drive weighed over 25kg, and needed a 24V 6A power supply.MyAmstrad CPC664came with 64k of dynamic RAM. Then a few months later the CPC6128 was released, with double the memory. So I unsoldered all the chips off the board and replaced them with 256k DRAMs. Built a board that bank switched the RAM in 16k blocks (emulating the 6128 banking switching scheme and more). Used a bipolar fuse-link PROM to do the mapping, programmed one bit at a time by flipping dip switches and pressing a button to blow each fuse.Made a floppy drive expansion board for theAmiga CD32, and installed a 3.5" floppy drive inside the CD32 case. The interface emulated all the essential functions of two8520 CIAchips using plain TTL logic.

author: dnotq
author_rank: Contributor
timestamp: August 24, 2017, 06:00:05 am
content: I skimmed the thread before posting, but missed if "easier to use" was clarified? Easy in terms of interfacing the CPU, programming, existing software availability and tools?The 8-bit CPUs like the Z80, 6502, etc. are probably the easiest to interface due to the limited data and address bus. There is also a lot of information and books available for building systems based on the classic 8-bit CPUs.The 8088/8086 are fine as long as you promise to *not* make a PC or XT clone. ;-) Make a unique system, it will be way more fun. You have to demux the address / data bus though, so extra glue logic right off the bat just to start interfacing the CPU. Well documented though, and lots of software tools.The Z80 is fast and the 6809 is probably the most advanced 8-bit CPU ever. I find both require getting your head around the architecture to program them with any kind of efficiency. But once you master their assembly language, they are very powerful. Interfacing is straight forward, and there are tons of example systems out there for reference, books, info, etc.The 6502 is nice to program, so I have been told. Probably decent tools available and used in a lot of classic computers.The TMS-9900, TMS-9995, and TMS-99105 seem to borrow heavily from the PDP-11 and have a nice assembly language. There are compilers available, albeit limited. Those CPUs also have a memory-based register file, which is interesting and good for fast task-switching (if that is important). Interfacing is straight forward, but they have a strange I/O implementation called the "CRU". TI seemed to be experimenting with a lot of ideas with that CPU family.The 68000 is a nice CPU with a nice assembly language, like the TMS-9900 family it is very orthogonal (IIRC). Certainly there are tools and software. What is really nice about the 68000 is the large flat address space, with a decent size physical address bus.

author: brucehoult
author_rank: Super Contributor
timestamp: August 24, 2017, 11:52:16 am
content: Quote from: dnotq on August 24, 2017, 06:00:05 amI agree this was never really clarified.QuoteThe Z80 was much easier to interface than the 8080, but the 8085 was easier again.As for the 6809, yes easy to work with electrically and the nicest "8 bit" CPU. In fact, once you get past documentation differences and look at the actual opcodes and their encodings, you find that there is not a lot of difference between the 6809 and the 8088. Both have eight registers, with a (slightly different) mix of 8 and 16 bit. Both have opcodes to select secondary pages with more opcodes. Even the 6809 indexed addressing mode byte is very similar to the 8088 mod/rm byte. Perhaps the biggest difference is that the 6809 allows only a register as the destination of arithmetic, not the memory operand. (except inc/dec/inv/neg/clr). The 6809 is a good fit for high level programming languages and an easy target for compilers.QuoteNo, it's awful. By far its best feature was that it was ten times cheaper than anything else at the time it was introduced. And it was a little bit pipelined, so it ran as fast as the memory would permit. It's extremely lacking in registers, so the easy way to program it is to treat Zero Page as 256 registers (or 128 16 bit registers, as you'll want quite a few as pointers, at least). In many programs that lets you put all the local variables of your various functions in more or less dedicated "registers" so you don't need to worry about stack. Which is fortunate as the support for a C-style stack is non-existent -- there's 256 bytes for function return addresses, and you can stash a register there temporarily (push/pop) within a function, but that's it. Recursive, reentrant, or position independent code is incredibly painful (all of them are trivial on the 6809). Because you're constantly shuffling things between Zero Page and the actual registers you need a lot of instructions to do anything and the code density is awful by modern standards -- even for 8 bit calculations, but (more than) doubly so for 16 bit calculations. Something like X->a = Y->b + Z->c needs seven instructions and thirteen bytes of code and 26 clock cycles for an 8 bit field (clc; ldy #b; lda ($Y),y; ldy #c; adc ($Z),y; ldy #a; sta ($X),y). Just awful. X->a = Y->a + Z->a is better at five instructions and nine bytes and 22 clock cycles. But not much.

author: fourtytwo42
author_rank: Super Contributor
timestamp: August 24, 2017, 06:02:04 pm
content: I am very sorry to go off at a slight tangent OP but when I was a lad "vintage computers" didn't have a processor chip as that didn't existThe earliest machines I was involved with were built using IC gates BUT a friend of mine worked on those built with transistors (no IC's at all). So the modern day appreciation of "vintage computer" often makes me laugh.........sorry..

author: brucehoult
author_rank: Super Contributor
timestamp: August 24, 2017, 07:52:46 pm
content: Quote from: fourtytwo42 on August 24, 2017, 06:02:04 pmThose aren't something you can buy from a catalogue, obviously, which seemed to be what the OP was asking about.You could emulate them in an FPGA. And rather a small one. And at 100x their original clock speed.

author: technix
author_rank: Super Contributor
timestamp: August 25, 2017, 08:30:08 pm
content: Quote from: brucehoult on August 24, 2017, 07:52:46 pmIf I am interested in this type of computers I would try write one in VHDL and put it into a FPGA instead of cooking up a massive circuit board for it. (Hey I am even trying to consolidate the glue logic on those older computers into a few CPLD chips...) Although for a long term project it may be fun (and expensive) to implement a transistor-only computer (probably using a lot of MOSFETs in CMOS configuration instead of the more common BJTs and diodes, just to keep the power draw in check...)

author: fourtytwo42
author_rank: Super Contributor
timestamp: August 26, 2017, 11:47:38 am
content: There is a free project somewhere with an entire spark written in VHDL, and it runs, I tried it many years ago while evaluating different FPGA's There is one herehttp://vlsicad.eecs.umich.edu/BK/Slots/cache/www.gaisler.com/products/leon2/leon.html

author: technix
author_rank: Super Contributor
timestamp: August 27, 2017, 06:56:13 pm
content: Project update.For this project I am going to stick to 80C88 and CPLD. However I will not build the system with a lot of MS-DOS compatibility (so I can place stuff in more convenient places. And a lot of modern stuff I want to implement really does not play nice with DOS.)Here are the features I have decided to give the system:* Processor complex: 80C88 CPU + 8087 FPU* RAM: AS7C4096 = 512KB SRAM* ROM: AT28C256 = 32kB EEPROM* Bus complex: MAX 7000S series CPLD + 82C59 PIC + 82C53 PIT + 82C37 DMA* Display: HD44780-based character display, mapped to I/O port.* Input: USB keyboard and mouse.* Sound: Direct DAC output with DMA (similar to Covox Speech Thing or Disney Sound Source)* Connectivity: 1x CH375 USB OTG on I/O port, 1x CH376 USB Host (4 ports via USB Hub) on I/O port, 1x W5100 Ethernet in memory map, 1x 16C550 UART on I/O port, 1x 82C51 UART on I/O port.* Storage: 1x microSD card slot over CH376.