10 ms·
Dunfield 6809 Portable
- pacaro 6y agoA friend and I have discussed doing something similar (i.e a luggable system in a wooden box) with rPI and a commodity 1080P display. We were thinking more of a campaign furniture aesthetic though
- tyingq 6y agoAn old Kaypro case would be heavy, but a pretty easy retrofit. You could fit a nice LCD in the spot where the 9 inch diagonal CRT goes. You could also have someone "chop" the depth of the case pretty cheaply at a metal shop.
- tyingq 6y agoA 6-chip 6809 SBC that runs BASIC: http://searle.x10host.com/6809/Simple6809.html http://searle.x10host.com/6809/Simple6809.html
- EvanAnderson 6y agoI love absolutely everything about this. I get the same feeling of admiration and envy from this that I get from machinists who build tooling and fixtures that they then use to make parts. This system feels like a serious tool the author built to do real work. The author's simulator runs fine on a 32-bit Windows machine. I would expect it to run under DOSBox just fine. The simulator's text user interface is also superb. Getting the machine running with the full OS was very straightforward (run "D6809.COM W=CUBIX.DDI" to start with the OS disk mounted read/write).
- anonymousiam 6y agoDid a lot of embedded 6809 assembly for satellite ground station equipment in the 1980s. I really enjoyed coding for that platform. Some of the things that set it apart from contemporary 8-bit processors: Multiple stack registers for complex argument passing. Internal 16-bit registers. (Integer) Multiply/Divide. Sign extension (SEX instruction!) Years later I did some embedded OS/9 (Not the Apple OS, but the Microware one.) The target was actually a 68k, but the OS had been ported from the original 6809 platform. It was pretty powerful for the day and although not completely POSIX compliant, it was very POSIX-like.
- Mountain_Skies 6y agoWonder how difficult it would have been to get OS/9 or Flex running on a custom build like this.
- buescher 6y agoProbably not too hard. There's a port of NitrOS-9 to this crazy thing, for example: https://www.frontiernet.net/~mmarlette/Cloud-9/Hardware/Liber809.html https://www.frontiernet.net/~mmarlette/Cloud-9/Hardware/Libe... I haven't tried his CUBIX on his emulator yet, but there's a certain richness to systems that start with a full fledged debugger on the bare metal. And he's got his own assembler, Forth, BASIC, APL, C compiler...
- jacquesm 6y agoOS/9 should be trivial to port, it was written with that goal in mind.
- colejohnson66 6y ago> Internal 16-bit registers. What does this mean? Aren’t all registers (for any mainstream processor) internal?
- canadian_tired 6y agoIt is really an 8-bit CPU from a bus (external connections) perspective...but internally, there were 16 bit registers (sort of...) Perhaps this was why he made the distinction.
- jhallenworld 6y agoIt's the link between 8-bit and 16-bit: at least that's what Motorola marketing said, look at the cover of this book: https://www.amazon.com/MOTOROLA-MC6809E-MICROPROCESSOR-PROGRAMMING-M6809PM/dp/B000P69K28 https://www.amazon.com/MOTOROLA-MC6809E-MICROPROCESSOR-PROGR...
- Mountain_Skies 6y agoWhat a nice build though it does look like you might get stabbed in the wrist by the latches when typing on it. Good reason to wear a sweat shirt while using it.
- korethr 6y agoThe cool thing is, if you were able to source the chips today, you could probably build a clone of this system yourself.
- localhost 6y agoThis reminds me of a brief fling that I had with a SuperPET back in the 80s. [1] 96KB RAM and an enormous ROM (48K!) with all the Waterloo languages (microAPL, microFORTRAN, microBASIC, microPASCAL, microCOBOL) in it! I never really wrote any ASM for it though, but it inspired me to write a p-code based runtime that had 16 bit registers for the 6502. [1] https://en.wikipedia.org/wiki/Commodore_PET#superpet https://en.wikipedia.org/wiki/Commodore_PET#superpet
- microtherion 6y agoI wrote a FORTH for the SuperPET (sold as a Waterloo "Micro Mainframe" here). The 96KB were done in a rather weird way, because there were really only 32KB of contiguous address space available once you accounted for ROM, and both the 6502 and 6809 had a 64KB address space anyway. So the SuperPET had 32KB contiguous RAM in the lower half of the address space, and 64KB of paged RAM occupying a 4KB address range somewhere in the upper half of the address space. The code for the Waterloo languages typically ran in paged RAM, split into 4KB segment, and when it needed to jump from one page to another, it used some trampoline routine to switch the page and jump back. For FORTH, I used a simpler scheme: I ran in contiguous RAM and used the paged RAM for the FORTH explicit virtual memory system, because there you only needed to guarantee access to one page at a time so it mapped onto the hardware without much sweat.
- ddingus 6y agoThe 6809 is a gem. So much fun to program in assembly. Someone should do a Ben Eater style kit. I am very tempted!
- Simplicitas 6y agothat would nice
- ezequiel-garzon 6y agoI remember seeing an ad of an Apple computer, possibly from the 80’s, that was sold as portable but putting together the whole package resulted in a huge cube. Does anybody know the model number, or have a link to the add?
- dboreham 6y agoGood times. So much nicer to code for vs 6502 and Z80.
- jonsen 6y agoI agree and I can tell, I once ported a 6809 program to Z80.
- tasty_freeze 6y agoByte magazine had an article back in the day where one of the designers talked about their decision process and intent while designing. Luckily, someone has already scanned that article. In fact, it looks like they recreated the article: https://cdn.hackaday.io/files/460001968064000/byte_6809_articlesx3.pdf https://cdn.hackaday.io/files/460001968064000/byte_6809_arti...
- Narishma 6y agoHere's the original article, in three parts: https://archive.org/details/byte-magazine-1979-01/page/n15/mode/1up https://archive.org/details/byte-magazine-1979-01/page/n15/m... https://archive.org/details/byte-magazine-1979-02/page/n33/mode/1up https://archive.org/details/byte-magazine-1979-02/page/n33/m... https://archive.org/details/byte-magazine-1979-03/page/n47/mode/1up https://archive.org/details/byte-magazine-1979-03/page/n47/m...
- illys 6y agoAside the article, the computers depicted in the ads are amazing!
- ddingus 6y agoThanks for this! What a blast from the past! Look at the ADS! Nice little diversion here. Sure do miss BYTE. Would be excellent to have a similar publication today. The scope is larger, perhaps too large, but maybe not. One got such great perspective from the pages of BYTE.
- Simplicitas 6y agoI love this story!
- elvis70 6y agoFor what it's worth, the source code of OmegaSoft Pascal, a Pascal cross-compiler with linker/assembler/... for OS9/68000 targeting the 6809, is available: http://pascal-central.com/omega.html http://pascal-central.com/omega.html Direct link to the archive: http://www.certsoft.com/PXK9_OS9_Source.zip http://www.certsoft.com/PXK9_OS9_Source.zip This seems to have been written in Pascal (Modula?).
- ilaksh 6y agoHow do the 6809 features compare to ARM and RISC-V? If someone wanted to play with assembly, would it be nicer on contemporary computers, or is there something about 6809 that is still an advantage? Maybe now just the simplicity could be helpful?
- jacquesm 6y agoThe 6809 compares to ARM and RISC-V the way a bicycle does to a Greyhound bus.
- colanderman 6y agoARM32? I would disagree. I've had occasion to do reverse engineering and hand-assembly of various bits of ARM32 Thumb code recently. It brought back all the feels of hand-assembling 6502 on my Apple //e in 1994. Moreso even than AVR assembly. The ARM32, 6809, and 6502 are all cut from the same cloth. Same type of vehicle, just more cylinders. ARM64 and RISC-V I would agree are very different beasts. One of the key differences I feel, is that caching and pipelining become much more important on these systems. Most (not all) ARM32 systems have very simple and short pipelines, and no cache. E.g. Cortex-M3 and -M4.
- colanderman 6y agoARM32 has the same "feel" to me as the 6502 and 6809 do. If you wanted to have a similar experience as those of us who cut our teeth on those systems, but on a more modern platform, I think you'd get it from ARM32. Really the most noticeable differences are, you won't have to waste cycles (literally) writing out 16- and 32-bit arithmetic carry code all the time, and you get registers instead of the zero-page. (Though the experience of writing carry code is still there, if you want to do any 64-bit arithmetic.) The historical reason for this is that ARM32 was directly modeled after the 6502, which in turn was based on the 6800, as was the 6809.
- jhallenworld 6y agoAlso: 6809 has PSH and PUL that take a register list. ARM's LDM/STM is a direct copy of this feature (via 68000's MOVEM). Other RISC processors did not have a list. The conditional branch instructions (and set of flags) for all of these are from the PDP-11.
- ncmncm 6y agoI can't see what the 6850 UART was for. The serial ports on the back were attached to 6551 UARTs. The keyboard is parallel.