Subject: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 31 Mar 2017 19:48:09 GMT View Forum Message <> Reply to Message It is interesting to see recent flurry of activities about the 68000 family. IMO, the 68xxx along with National's 32xxx are two most elegant 32-bit computer architectures of their time. Let this be a lesson to aspiring computer architects: elegant does not mean success, quite the contrary in fact. The wonderful thing about homebrew is we can ignore what the market picked and chose the elegant one over the successful one. I too am a fan of 68K and coincidentally starting to get reacquainted with the 68K in the last three months. I used the 100mm x 100mm pc board format as pathfinder vehicle for my exploration of 68K mainly because it is cheap and I can throw away the board if it didn't worked out. I call them the Tinyxxx, mainly because it is tiny. I've designed & successfully boot up three (68000, 68020, 68030) and am working on the 4th (68040). I posted my experiences on EASy68k forum, but it went down in the past few days due to malicious software. I'm working on wiki of the Tinyxxx on the RetroBrew web under builderpages 'plasmo'. I'm posting all the design information I can think of there. It is work in progress.

https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:start

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Fri, 31 Mar 2017 20:13:07 GMT View Forum Message <> Reply to Message So that's where all of the 68030s have been hiding! A 030 design is my next project, after getting the current one "Mike's first 68K" https:// www.retrobrewcomputers.org/forum/index.php?t=msg&th=145& amp;start=0& finished.

I look forward to see more details of your Tinyxxx designs.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Fri, 31 Mar 2017 20:29:29 GMT View Forum Message <> Reply to Message plasmo wrote on Fri, 31 March 2017 14:48It is interesting to see recent flurry of activities about the 68000 family. IMO, the 68xxx along with National's 32xxx are two most elegant 32-bit computer architectures of their time. Let this be a lesson to aspiring computer architects: elegant does not mean success, quite the contrary in fact. The wonderful thing about homebrew is we can ignore what the market picked and chose the elegant one over the successful one. I too am a fan of 68K and coincidentally starting to get reacquainted with the 68K in the last three months. I used the 100mm x 100mm pc board format as pathfinder vehicle for my exploration of 68K mainly because it is cheap and I can throw away the board if it didn't worked out. I call them the Tinyxxx, mainly because it is tiny. I've designed & successfully boot up three (68000, 68020, 68030) and am working on the 4th (68040). I posted my experiences on EASy68k forum, but it went down in the past few days due to malicious software. I'm working on wiki of the Tinyxxx on the RetroBrew web under builderpages 'plasmo'. I'm posting all the design information I can think of there. It is

Page 1 of 71 ---- Generated from RetroBrew Computers Forum work in progress.

https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:start

I would be interested what you are doing on the 040. I am getting ready to send out a board. It is what I call the lite version - will have 2Meg of static Ram to debug all the base logic followed by a full version with dynamic RAM. That is what is the part I am most concerned about and of course the base design. I want to do the lite version for debug now as it will be a smaller board and the cost won't be as high. The full version will probably have to be a 4 layer board which will drive the cost up.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 31 Mar 2017 21:08:37 GMT View Forum Message <> Reply to Message Pictures of the three Tinyxxx boards. The 100mm x 100mm is in fact quite adequate for a reasonably complex design. In the 68030 case with the DRAM working, I believe I can get rid of the 40-pin expansion header, the 32-pin 8-bit RAM, the 3x 74240 buffers and replace them with an IDE interface & video, well on its way to a standalone system.

Tiny302

Tiny020

Tiny030 File Attachments 1) Tiny302pcb_all_LED.jpg, downloaded 3666 times 2) DSC_22100307.jpg, downloaded 3530 times 3) DSC_24280325.jpg, downloaded 3536 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 31 Mar 2017 21:13:37 GMT View Forum Message <> Reply to Message Yoda, Regarding my plan with Tiny040: I was hung up on figuring out a way to iterate boot software rapidly on Tiny040. I was planning on a SIMM72 flash that can be programmed on Tiny030's SIMM socket and then move to Tiny040's boot SIMM socket. At this point I think that's more elaborate than necessary. I already have a monitor that runs fine on 68000/68020/68030 so just put that on 4x flash on the Tiny040 board in sockets and make them programmable insitu, add 68681, SIMM72 socket for DRAM, mc88915 for

Page 2 of 71 ---- Generated from RetroBrew Computers Forum clock control and EPM7128SQC100 for glue logic & DRAM controller. That should fit within the 100mm x 100mm format. This scheme should get 68040 to boot and start software development. Insitu reprogramming of the flash should allow me to upgrade the software as it evolves.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Fri, 31 Mar 2017 22:25:51 GMT View Forum Message <> Reply to Message Hi Plasmo

I don't quite understand what a SIMM Flash is. My design is a 68040 with 68150 bus controller. I plan a 68681, 68230(for a timer) and 16 IDE interface. I am using EPM7128SLC84 for glue logic (I am almost out of pins so I may have to addd a couple TTL chips to free some pins). I am planning a second EPM7128SLC84 and 2 72 pin simm's up to 256MB of memory. How flexible is your memory controller and would it handle something like that. I don't think it fits in 100X100 board. My biggest concerns are the 68150 debug and DRAM. I know the other devices work well and debugged that code on Gryphon and Xagdin boards.

The way I do debugging is to use a cross compiler on my Mac. Once I have serial port working, I have Xmodem in my code base so I can transfer binaries very quickly (20-30 seconds) into SRAM and do debugging and when I have a certain amount of code working I will reflash my flash with latest and greatest. All I have to do is relink the code at a different start address which I have as link script and just choose a make target of ROM or RAM to change.

Dave

Subject: Re: Plasmo's 68k pathfinder projects Posted by mscane on Fri, 31 Mar 2017 23:09:09 GMT View Forum Message <> Reply to Message Guys,

I'm kind of stuck in the 8 bit world (Z80) and have not done anything much on the 68K, or the x86 for that matter.

I do have a mini 68k board up and running but I have not done much with it.

I'm curious as to what software/OS you run on your 68K boards?

I know CP/M 68K is available but it doesn't seem all that popular.

With all that address space available I would have thought there would be a range of OS available but I haven't heard of any.

Perhaps all the development went into Unix?

Page 3 of 71 ---- Generated from RetroBrew Computers Forum I'm interested to hear your thoughts.

Cheers!

Max

Subject: Re: Plasmo's 68k pathfinder projects Posted by jcoffman on Sat, 01 Apr 2017 02:01:14 GMT View Forum Message <> Reply to Message Max,

The last 68k round I was involved in was the KISS-68030. At that time, the CP/M-68 ROM from the Mini-M68k was evolved to common source code for both boards. The extra, is that the KISS ROM can boot Will's port of 68K .

--John

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 01 Apr 2017 02:24:35 GMT View Forum Message <> Reply to Message yoda wrote on Fri, 31 March 2017 15:25Hi Plasmo

I don't quite understand what a SIMM Flash is. My design is a 68040 with 68150 bus controller. I plan a 68681, 68230(for a timer) and 16 IDE interface. I am using EPM7128SLC84 for glue logic (I am almost out of pins so I may have to addd a couple TTL chips to free some pins). I am planning a second EPM7128SLC84 and 2 72 pin simm's up to 256MB of memory. How flexible is your memory controller and would it handle something like that. I don't think it fits in 100X100 board. My biggest concerns are the 68150 debug and DRAM. I know the other devices work well and debugged that code on Gryphon and Xagdin boards.

The way I do debugging is to use a cross compiler on my Mac. Once I have serial port working, I have Xmodem in my code base so I can transfer binaries very quickly (20-30 seconds) into SRAM and do debugging and when I have a certain amount of code working I will reflash my flash with latest and greatest. All I have to do is relink the code at a different start address which I have as link script and just choose a make target of ROM or RAM to change.

Dave

SIMM flash and SIMM I/O come out of the notion that once we have control of the address

Page 4 of 71 ---- Generated from RetroBrew Computers Forum multiplexing scheme in CPLD, we can reconfigure the scheme based on memory map, so the SIMM sockets become generalized expansion ports. Therefore the motherboard is consists of a CPU, a CPLD and an array of SIMM sockets controlled by the CPLD. Boot flash (SIMM flash), different SIM I/Os, and of course the SIMM DRAM are plugged into the array of SIMM sockets to form a computer system. I want to embody this concept in Tiny040 but it has too many moving parts so I'll wait for another day, probably do it with 68030 becasue I have so many parts.

I discovered too late that I can't do burst memory access in Tiny030 because the burst addresses need to be incremented externally (unlike the 68040). So I'm migrating the external address multiplexer into the CPLD so that's why I use the 100 pin surface-mount 7128SQC100 (I also have a lot of them). Since all addresses are in the CPLD, remapping it for 16 meg or 64 meg DRAM should be easy. I do my CPLD design in schematic for better control of the scarce resource. The DRAM sequencer plus the CAS-before-RAS refresh logic take 18 flip flops. So there are plenty of room for growth. I will upload Tiny030 CPLD design file in a day or two so you can take a look.

I have a S record loader in my boot code so I can load program into Tinyxxx's RAM serially and debug. Tiny302 has memory remap registers to swap RAM into location 0. 68020/030/040 all have vector base register so no need for remapping. Tiny020 & Tiny030 have an expansion port that has the same pinout as a flash memory so it is also a flash programmer. There are two jumpers on Tiny020 that swap the memory map of programmer with boot flash so code can boot out of the programmer. These are my mechanism for developing boot code.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 01 Apr 2017 02:44:59 GMT View Forum Message <> Reply to Message Max, I don't have answer to your question. My experience with 68K a quarter century ago was embedded hard real-time applications. We developed our own bare-bone OS, monitor/debugger, and applications. At this moment I frankly don't know what to do with 32 megabyte of memory in Tiny030, other than running memory diagnostic! I figure if I can build the CPU engine with plenty of memory cheaply (emphasis on cheaply), others will figure out what to do with it. After Tiny040 I want to do IDE, video, and Ethernet because they are all new to me so that's an end in itself for me. After that...then I'll need to figure out a good answer to your question. Actually I may not have that much time, my wife is asking the question already.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Sat, 01 Apr 2017 13:27:29 GMT View Forum Message <> Reply to Message Hi

Not entirely clear yet but I think I understand. It sounds like it is not a standalone system per se. I understand the CPLD multiplexing but it sounds kind of amazing on 18 flip flops for DRAM

Page 5 of 71 ---- Generated from RetroBrew Computers Forum controller. I have used the epm71128s1c100 but have mixed thoughts there for the general hobbyist to solder them including myself even though I have a bunch of them in my parts and have gone back to epm7128slc84. I too have an S-record loader in my boot rom but have found the Xmodem loader to be much faster and easier to use, so I rarely use it now.

I look forward to seeing your CPLD design logic. I have been doing all my code for CPLD in verilog just because it is something I wanted to learn as I have a bunch of FPGA's on my bench that I would like to incorporate eventually as a video, SD card, SPI, ethernet, etc.

Dave

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sat, 01 Apr 2017 15:37:20 GMT View Forum Message <> Reply to Message I think he's saying that he views a SIMM slot as a general purpose expansion slot under the control of the firmware in the CPLD. So he can put DRAM on the card plugged into the SIMM slot, or FLASH on the card, or basically any I/O since he can customize the CPLD code to handle.

A SIMM slot has address, data, and control lines to it tha can handle high speed connections. So it's just a different form factor expansion slot. I've seen SIMM connectors used for all sorts of things. A lot of COM standards put the CPU on a card that fits into a SIMM/DIMM connector. They usually rename the connector but it really is a SIMM/DIMM connector.

I could be wrong though.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 01 Apr 2017 17:04:46 GMT View Forum Message <> Reply to Message Yoda, I uploaded the CPLD design of Tiny030 here: https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=b uilderpages:plasmo:tiny030:tiny030_cpld.pdf RefreshDRAM block contains the CAS-before-RAS refresh logic. AccessDRAM block contains the DRAM access sequencing logic. Basically it is a clocked tap delay line and that clocks on both rising edge and falling edge. Clock symmetry is important, timing spec is met with symmetry of 60/40 which is the spec of most crystal oscillators. Refresh starts on the negation of Address Strobe. Refresh occurs concurrently with non-DRAM access. Where DRAM access and refresh occurr at the same time, DSACKx will be held off until refresh is completed. The refresh counter of 256 clocks is designed for 16MHz system clock. The board is now running at 24MHz, so refresh counter can increase to 380 clocks. That's lesser than 1% penalty on memory bandwidth. The address multiplexer is external. I used 74240 instead of 74157. That was a mistake because

Page 6 of 71 ---- Generated from RetroBrew Computers Forum I need an extra time for the RAS address buffer to negate before asserting the CAS address buffer thus resulting in 2-wait state DRAM access at 24MHz. Using 74157 would've reduced wait state to 1 and save 1 CPLD flip-flop. If & when I redesign Tiny030, I'll move the address multiplexer inside the 7128sqc100 so I can have 1 wait access as well as burst access.

I use Verilog as well when I design in Altera's Cyclone & Stratix families, but I always use schematic in the CPLD family for better control of resources. Altera schematic software is superb. I've used my share of CAE tools and it is the best, IMO.

The lead pitch of 7128sqc100 is 26 mil (0.65 mm BSC) so it is not too hard to hand solder. To help it furthur, I'll design the footprint with longer finger pads so it is easier to align and easier to preheat with soldering tip. I have a Metcal soldering station so I can easily switch in a fine tip. The secret is fine tip, fine solder, and flux. I have a roll of multi-core 63/37 10 mil solder and it makes all the difference.

------

Mike, You are exactly correct. Once I have control of SIMM timing in CPLD, I can use the SIMM anyway I like. Not only does SIMM have address/data/controls, it also have lots of spare pins. We are the homebrew-er, we can chuck standards when it is inconvenient!

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Sat, 01 Apr 2017 17:43:40 GMT View Forum Message <> Reply to Message Plasmo,

I understand what you met by Simm flash etc now. I will have to study your schematic. I prefer to do in verilog - a little easier to understand timing for me. I find I run out of I/O pins long before I run out of logic on the CPLDs. So does your DRAM controller extend easily to 64 and 128MB SIMMs? My goal is to use 2 of the latter to get to 256MB which should be sufficient for a Linux system (at least initially).

040 is a little tricker as there is no 030 dynamic bus sizing but I think I have that figure out.

Thanks again for you schematic - I probably will have questions. Now I am debating going with one 7128sqc100 versus 2 7128slc84s - I will have to work through the logic and see if everything fits into one.

Dave

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 01 Apr 2017 19:05:24 GMT View Forum Message <> Reply to Message

Page 7 of 71 ---- Generated from RetroBrew Computers Forum 256 megabyte, my sainted aunt! How does one even fill 256 meg with meaningful code? Obvious I've lots to learn coming out of the hard real-time world where code MUST execute an iteration within 20mS EVERY time or you are out of a job. I know what level of sophistication 256K byte of hard real-time code can do, what 1000 times more code can do boggle the mind.

All bitching aside, yes, if you put the address multiplexer inside the CPLD, it is easy to change from 16 meg DRAM (11 bit address multiplexing) to 64 meg DRAM (12 bit address multiplexing). 128 meg is 2 banks of 64 meg, but same 12-bit address multiplexing. A fly-in-the-ointment is that 64/128meg DRAM are almost always 3.3V so interfacing 3.3V DRAM to 5V 68040 (there are 3.3V 68040, but I don't think they are available in PGA, I maybe wrong) can be troublesome. If the address multiplexers are external, then they need to be wired for either 11-bit address width or 12-bit address width. At least this is what I think. I don't even know much about DRAM interface until a month ago so others are in better position to answer your question.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Sat, 01 Apr 2017 19:49:30 GMT View Forum Message <> Reply to Message Welcome to Linux - pretty easy to fill memory.

128 MB simms that are 5V are easy to find - have a look at eBay. The KISS030 used them as well.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 01 Apr 2017 20:15:45 GMT View Forum Message <> Reply to Message Ha, you are absolutely right. There are SIMM using KM44C16000B which is 5V part. There are even some that's 3.3V SIMM, but proven to work in 5V environment. Cool, so we can have 256meg memory as crazy as it sounds, with 5V 68040.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sat, 01 Apr 2017 21:54:33 GMT View Forum Message <> Reply to Message Question: why is the 32bit fixed width data bus a problem/trickier with the 040?

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Sat, 01 Apr 2017 23:47:23 GMT View Forum Message <> Reply to Message Kind of hard to boot off an 8bit Flash chip for one. Becomes very messy with 8 and 16 bit I/O as

Page 8 of 71 ---- Generated from RetroBrew Computers Forum well. MC68150 should take care of that.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sun, 02 Apr 2017 06:20:39 GMT View Forum Message <> Reply to Message yoda wrote on Sat, 01 April 2017 16:47Kind of hard to boot off an 8bit Flash chip for one.

The simple solution to that is to use four of them!

Quote:Becomes very messy with 8 and 16 bit I/O as well. MC68150 should take care of that.

I'd think external DMA devices would be the big problem. If any of them wanted to do non 32 bit transfers, your memory system would have to accommodate that even though the CPU would never do it.

I still need to find a list of 68K support chips. In the meantime, I'm off to find out what a MC68150 does.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Sun, 02 Apr 2017 18:08:01 GMT View Forum Message <> Reply to Message mikemac wrote on Sun, 02 April 2017 01:20yoda wrote on Sat, 01 April 2017 16:47Kind of hard to boot off an 8bit Flash chip for one.

The simple solution to that is to use four of them!

Quote:Becomes very messy with 8 and 16 bit I/O as well. MC68150 should take care of that.

I'd think external DMA devices would be the big problem. If any of them wanted to do non 32 bit transfers, your memory system would have to accommodate that even though the CPU would never do it.

I still need to find a list of 68K support chips. In the meantime, I'm off to find out what a MC68150 does.

Well adding four flash chips takes a lot of room on board and programming (splitting binaries and programming 4 of them and plugging them in right sockets) is a real pain. The I/O on 8 bit and 16 bit is a pain as well. Most designs I have seen either used a 68360 as a glue chip or custom asics or programmable logic to resolve the bus issues - the 68150 looks like it will do the trick relatively cleanly.

Page 9 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sun, 02 Apr 2017 19:25:47 GMT View Forum Message <> Reply to Message Ah! I hadn't grasped the idea of turning off the 020 in the 360 so it could be used as a companion to the 040. Now I get it.

That MC68150 does look interesting. Also looks hard to get.

Thanks for giving me some more insight into the MC68K world!

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Sun, 02 Apr 2017 22:04:33 GMT View Forum Message <> Reply to Message mikemac wrote on Sun, 02 April 2017 14:25Ah! I hadn't grasped the idea of turning off the 020 in the 360 so it could be used as a companion to the 040. Now I get it.

That MC68150 does look interesting. Also looks hard to get.

Thanks for giving me some more insight into the MC68K world!

Seem easy to get. I picked up 4 on eBay and supplier says more than 10 available.. 2 other suppliers in US as well. I also think Utsource has them as well so not difficult to find.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 05 Apr 2017 15:54:40 GMT View Forum Message <> Reply to Message How to build a $10 68K homebrew?

I'm thinking out loud about building a 68000 homebrew with $10 worth of parts. There is a good bit of enthusiasm about the 68K family and the basic 68000 is a good starting point to learn about 68K. There are three recent 68000 design activities just on the retrobrew website alone and I'm about to add the 4th one, but with the goal of keeping the board cost as low as possible. My feeling is that more people will work with the 68K if the cost is low. So what do I mean by low cost? A 68K homebrew will have add-on and expansion capabilities, but the core design, i.e., the minimum set of components needed to boot-up, communicate with outside world, and execute uploaded files, need to be cheap. Items excluded from cost calculation are: * support accessories are not counted. This means external power supplies, cabling, USB-to-serial adapter are excluded from cost calculation * IC sockets not counted * Assembly/test cost not counted * shipping cost not counted My approach is this:

Page 10 of 71 ---- Generated from RetroBrew Computers Forum * purchase component lots. I've purchased 100x 68000 for $99, that's a while ago, so that's call it $2 today. * purchase used components. used SMT with bent legs is almost worthless because it can't be machine soldered, but for hand soldering it is not a problem. I've purchased lots of used 7128SQC100 for a song. Let's call it $1 for used 7128SQC100. * purchase obsolete memory module. SIMM72 at 4 meg & 16 meg are dirt cheap as used surplus lots. let's call it $1 for used 16meg SIMM72. * pc board in the 100mm x 100mm form factor. We know it is $10 for 10x 100mm x 100mm pc board, so $1 pc board. With CPU/SIMM/CPLD and $1 pcb ($5 parts so far), lets design a 68k using SIMM, CPLD, and no ROM. Actually there is a ROM, but it will be a cheap serial flash, such as an AT24C256 (eBay has it at $12 for 50pcs). Here is a piece of innovation I don't have, yet--how to load boot program from serial flash into SIMM at power up. This is easy with a sophisticated FPGA, but I'm working with a modest (therefore cheap) CPLD. I know about 40% of 7128S is used for decoding and SIMM DRAM controller, I believe the serial flash logic can fit in remaining 60%. This part definitely require path finding. Remaining components to round out the design is DUART (68681, $1), oscillators ($1), and capacitors/resistors ($1), reset logic & push button (40 cents). The tally stands at $8.65 right now. A relatively expensive SIMM socket is needed to plug the SIMM72 to pc board, but perhaps that can be eliminated by have SIMM72 pads at one edge of the pc board. SIMM72 can be soldered to the pc board using single-row 1.27mm strips (35 cents). So it is $9 now, I think that's all. So the $9 core design looks like this: 68000 CPU, Altera 7128SQC100 (decode/DRAM controller/flash loader), 16meg SIMM72 DRAM, AT24C256 serial flash, 10 MHz oscillator, 3.6864MHz oscillator, 68681 DUART, filter cap, bypass cap, resistors as needed. Plenty of room remaining on the 100mm x 100mm board, so IDE interface, expansion connector, 7-segment displays, etc can be added, but those do not count toward $9 basic design.

Thoughts?

Edit, I suppose this will be called Tiny68K, but with 16meg DRAM max out 68000's memory space, it really should be Maxi-Tiny68K.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Wed, 05 Apr 2017 18:57:35 GMT View Forum Message <> Reply to Message Interesting but I would not try to over achieve cheap. For example not having a simm socket could be a problem as I have found I have had to cycle through multiple cheap simms to find ones that are reliable. If you intend to solder them there could be a lot of rework there. Also a lot of people on these forums are not too keen on surface mount devices. I can do but sometimes it can be a challenge. Also the serial flash to parallel seems to add complexity - definitely debug challenges when you only have dram that has to work to test. I like to always have a small amount of sram available for debug. Seems like if you are going SMT then go for the 3.3 v 68k and an altera Max 10 FPGA and you can do UART, glue, SPI for storage and probably have room in the block ram for a boot loader so it is even simpler - not sure what the cost comes out to be but you basically have 2 chips on board plus simm socket - can't get much simpler.

Page 11 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 06 Apr 2017 05:21:02 GMT View Forum Message <> Reply to Message Thanks for the feedback. It is unclear to me how elastic is the demand for retrobrew computers, whether lower cost will bring in correspondingly more interests or more applications. Prior to discovering the low cost of pc board manufacturing, I've reverse engineered a batch of commercial 68K boards, modifying boot software and adding Xbee & LCD display features and scattering them around my house & garage. Cost was important for those embedded applications. It seems to me a $10 68K core with compact flash IDE and room for other I/O has many potential embedded applications.

I envision the serial flash loader to keep CPU in reset while copying ROM code from serial flash into DRAM at power up, so when CPU comes out of reset, it will have the boot code in first 8K or so of DRAM. Ideally the CPU can also write boot code back into the serial flash, but that may require more logic than the 7128S CPLD can handle, so I plan to prototype a serial flash programmer with a Tiny030. Program a serial flash with Tiny030, move it to TinyMax68k and boot. That's the plan

Your experience with SIMM72 is different than mine. SIMM were so cheap at one time that I can go to local computer salvages and buy them by the pound. I did and I have about 5 pounds of them, many scratched up, thrown into pile without any ESD or foreign object controls. Recently I memory tested 18 of the16-meg SIMM from the salvages on a Tiny030 and 16 of them passed. Nevertheless a SIMM socket in conjunction with solder-able SIMM edge pads is not a bad idea. SIMM socket can accommodate DRAM/SIMM flash/SIMM I/O and solder-able edge pads can handle SIMM DRAM or serves as an expansion port.

I understand the reluctance with SMT soldering, especially with BGA and fine pitch (<20mil) components, but that really limit the scope of what one can design & build. With the cheap pc board technology so advanced, it is a shame not to match the pcb with comparable packaging technology. It is a skill well worth cultivating.

3.3V 68SEC000 with Max10 is a good idea. MAX family even have calibrated RC clock that's accurate enough for baud clock. A simple UART only need 37 flip flops plus whatever for clock prescaler. Unfortunately my 16meg SIMM are all 5V, so it won't play in this particular scenario. CPU+FPGA+memory are great combination.

Subject: Re: Plasmo's 68k pathfinder projects Posted by Andrew B on Thu, 06 Apr 2017 06:29:59 GMT View Forum Message <> Reply to Message I will probably jump into the 68000 bandwagon here in the next few months, likely with John's KISS-68030 board (I'd like to replicate Will's super sexy Linux setup).

I do think it would be nice to have a new, beginner friendly starter board. We have a lot of Z80/Z180 options right now and a 68000 option would be great. (Although in fairness to John C - we do already have 2, the Mini-68k and the KISS-68030)

Page 12 of 71 ---- Generated from RetroBrew Computers Forum In a new design I would prioritize part availability long-term and limiting SMT soldering if possible over cost. If not availability of exact parts, ability to slightly change out parts and keep things going (like swapping to a newer more available FPGA over time).

The biggest issue I see with the various ECB cards and John M's S-100 cards is that some parts just become un-available with time. Various FDC chips have different levels of interchange/idiosyncrasies and some are hard to get, the 28-pin UART on the CPU280, the HD-6120 on the SBC-6120, the Lava 10 FPGA based VGA S-100 board FPGA module, etc. A design that lots of beginners might have fun with over the next 10 years (about the age of some of the original RBC boards from when the project was known as N8VEM) should use as much standard parts as possible. Using common parts also allows people to choose from buying new from Digikey/Mouser/Farnell/etc or sourcing from whatever discount source of choice they have.

This is just my 2 cents and I think primarily this board and wiki is a 'do-acracy' so feel free to do whatever you'd like and share. I think we are on the edge of something really cool with all these 68000 discussions and Will's Linux work.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Thu, 06 Apr 2017 16:00:53 GMT View Forum Message <> Reply to Message I think insuring 10 year availability of the long since discontinued 68K is going to be a challenge. Heck, insuring anything is still readily available in 10 years is difficult, even with new parts. The best I can design for is readily available now from Digikey.

My dream 68000 system is something like this:

I'd probably use something like VME's J1 connector and eurocard format for the boards. Although a single stacking connector is also tempting. If VME, either buy a stock J1 backplane or modify Will's mini 3 slot ECB backplane.

The "Magic Black Box" would probably have to be one or more FPGAs. (You could divide the expansion card into two: UART & HD on one board, Ethernet & KVM on the other. Maybe three with Ethernet on the third board?

Of course all of this is gross overkill for a 16MHz processor with no MMU. But eventually I could swap out the 68000 board for a 68040 based one and have my Sun 3/80 running Linux.

In the meantime, I do plan on building this CPU board. (With a UART on board for standalone use.

Subject: Re: Plasmo's 68k pathfinder projects

Page 13 of 71 ---- Generated from RetroBrew Computers Forum Posted by plasmo on Thu, 06 Apr 2017 23:09:49 GMT View Forum Message <> Reply to Message Andrew, Welcome to the 68K bandwagon, more is truly merrier! Beside the 680x0 family of computer, there are also the 683xx (CPU32) family of which use 68000 as the core processor. I don't see much homebrew activities with 683xx which is surprising because they are particularly easy to construct thanks to rich I/O features, system integration module, and background debugger. Many of them are available in PGA package (68360, 68340, 68302). I collect them, and intent to build them in the 100mm x 100mm format in next few years (it will take years to explore the CPU32 family).

I probably didn't make it clear at the beginning of this thread that all my Tinyxxx designs are available to the retrobrewcomputers users. I posted most of the design information, including the Gerber/drill files, in my builder page ( https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:start The construction logs are empty becasue I want to build each board again and document all the steps. I'd happy to supply my surplus bare boards at my cost which is about $3 per board because of DHL shipping. Alternatively, at $10 for 10 boards, you may just add the design files to your existing pcb order. ------Mike, After 38 years, 68000 is still in production. This is so because they've worked their way into industrial controls and automotive engine controls, so I won't be surprised to see them around for another 10 years. CPLD/FPGA have evolved rapidly during my career so it is unlikely any of them will be in production 10 years from now. There'll be FPGA for sure, just not today's FPGA. Ironically, 22V10 is more likely to be around 10 years from now, IMO. That's because 5V systems are so entrenched in industrial controls and 22V10 is critical in supporting the 5V systems.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Fri, 07 Apr 2017 02:00:30 GMT View Forum Message <> Reply to Message Andrew Lynch and I made a prototype board with a 68360 on it. I was able to partially bring it up but the programming is really a nightmare to work with. Yes it can be done but for character I/O it is not optimal and to interface to a 040 which we were looking at it seemed to be a lot of work to get working and the dram controller seemed very limited as well which was another piece we were looking at.

Dave

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 07 Apr 2017 11:18:26 GMT View Forum Message <> Reply to Message I looked into the 68360 manual just now and I see the serial devices are SCC, same as that of the

Page 14 of 71 ---- Generated from RetroBrew Computers Forum 68302. The console port of the Tiny302 is a SCC so yes, I can sympathize with your frustration. There are about 30 lines of SCC initialization code and few lines in the transmit/receive interrupt services that took several days of intense study and good bits of trial & error to understand. The lack of background debugger on the 68302 made code debugging even more difficult. But once various registers are initialized and the buffer descriptors are setup & linked, it is a dream to run. The Communication Process took care of most everything and the 68000 just moves data block in/out.

Take a look of Tiny302 with just the core components (the minimal set of components to boot up processor, communicate with console, load & execute programs), It is basically an oscillator, boot flash, RAM, 68302 and a connector (left side of the board that interfaces to USB-to-serial adapter). Even the memory remap function resides in the 68302. I believe this is what the core component set for all 683xx will look like.

File Attachments 1) Tiny302pcb_core_comp.jpg, downloaded 3220 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Fri, 07 Apr 2017 15:16:51 GMT View Forum Message <> Reply to Message Yep that is pretty much what our 68360 proto board looked like. A few extra caps and we used the scaler PLL that was built in for the clock. I also added an LED bar to the parallel port of the chip and that is how I debugged it. If I recall there are like 16 steps to initialize the chip and I used the LED bar to tell me which step I was on. It was rather straightforward once I got the PLL working - I was off by a factor of 100 somehow on the capacitance which took a while to figure out.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Fri, 07 Apr 2017 16:49:21 GMT View Forum Message <> Reply to Message Does the 683xx contain a MMU? I can't find anything that indicates it does but that info could be buried someplace that I haven't noticed.

And to me, the lack of a MMU would be a show stopper. Unless it could be used as a 68040 companion. And for now, I'll take Dave's word that using it as a companion isn't as start forward or beneficial as one would hope at first glance. So I'll be sticking to my dream of a Sun 3/80 retro system until someone comes up with a more enticing idea.

Subject: Re: Plasmo's 68k pathfinder projects

Page 15 of 71 ---- Generated from RetroBrew Computers Forum Posted by jcoffman on Fri, 07 Apr 2017 16:53:12 GMT View Forum Message <> Reply to Message

None of the 683xx chips have an MMU. The chips are intended for embedded applications. They would make good companion chips for a 68040 or 68060 based computer.

--John

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Fri, 07 Apr 2017 21:07:30 GMT View Forum Message <> Reply to Message jcoffman wrote on Fri, 07 April 2017 09:53 None of the 683xx chips have an MMU. The chips are intended for embedded applications. They would make good companion chips for a 68040 or 68060 based computer.

--John

That's what I thought. I just wanted to double check with those who know more than me.

Subject: Re: Plasmo's 68k pathfinder projects Posted by nuclear on Sun, 09 Apr 2017 07:33:10 GMT View Forum Message <> Reply to Message plasmo wrote on Wed, 05 April 2017 18:54How to build a $10 68K homebrew? A relatively expensive SIMM socket is needed to plug the SIMM72 to pc board, but perhaps that can be eliminated by have SIMM72 pads at one edge of the pc board. SIMM72 can be soldered to the pc board using single-row 1.27mm strips (35 cents).

That's an excellent idea :)

I also recently tried to come up with something to experiment with 72pin SIMMs without sockets, and I came up with this solution which although a bit laborious, works very nicely: http://imgur.com/a/qAi5k (the last two images at the bottom of the album). That's a standard double-row header straddling the SIMM, with one side of the pins bent about 45 degrees to contact odd pads on one side and even pads on the other.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 09 Apr 2017 11:56:59 GMT View Forum Message <> Reply to Message

Page 16 of 71 ---- Generated from RetroBrew Computers Forum That's a good idea, and fine soldering job. I was thinking of using two single-row strip, top strip and bottom strip are offset by 50mil. Your approach is better, it fits 100mil proto-board. eBay has 50mil strip with female receptacle that can be soldered to a pcb while the 50mil pin header is solder to the SIMM. This way the SIMM can be disconnected and replaced if need be.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 05 May 2017 22:08:54 GMT View Forum Message <> Reply to Message Send off a design for a cheap 68000 homebrew ( https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=152&goto=2253&#msg_2253 ) plus another design of 100mm x 100mm pc board to Seeed Studio. They've lowered their price to $4.90 for 10pcs of 100x100mm boards. They still don't have a cheap shipping option, so I wind up picking DHL shipping like before. Hard to complain about shipping cost when the total cost for 20pcs pc boards is $30--$9.80 for 20 boards and $20 for shipping. I can't imagine they are making any money at this price.

Subject: Re: Plasmo's 68k pathfinder projects Posted by computerdoc on Sat, 06 May 2017 23:17:13 GMT View Forum Message <> Reply to Message Hi Plasmo, Please put me on the list for 1 or 2 boards depending on cost. I prefer buying 2 at a time. Your little Tinyxxx projects are very interesting. I'm eager to see what you can do with them. Take care my friend.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 07 May 2017 03:23:15 GMT View Forum Message <> Reply to Message Kip, Since I'm shooting for a $10 68000 computer, the pc board cost should be cheap, too. In fact, the board itself is 50 cents, but DHL shipping from China drives the effective board cost to $1.50 each, plus whatever cost of first-class mail in the USA.

I'll post a note when I have the board working, but in the meantime the schematic and Gerber design files are in my builder page under the heading of "Tiny68k". I'll update the page as I go. It will be a while because first I have to check out the serial EEPROM programmer that I designed along with the Tiny68K. Figure out how to write the EEPROM, program it with appropriate 68000 monitor, move the chip to Tiny68K and then figure out how to load the 68000 monitor from EEPROM into DRAM and boot out of the DRAM. Lots of moving parts, and I'm busy farming in the summertime.

Page 17 of 71 ---- Generated from RetroBrew Computers Forum You may noticed that I've added Xbee interface, IDE for CF, 7-segment displays, and SIMM72 socket. These are "luxury" items not part of the $10 68000 computer. (I sound like a car salesman

Subject: Re: Plasmo's 68k pathfinder projects Posted by computerdoc on Sun, 07 May 2017 03:53:28 GMT View Forum Message <> Reply to Message Hi Plasmo, If the boards are that cheap then put me on the list for 2 boards please. I am following this Tiny68K with great interest.

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Mon, 15 May 2017 21:22:28 GMT View Forum Message <> Reply to Message Watching with interest.

For software CP/M 68K wasn't the only game in town. In fact it basically died the death. What rose from the ashes was the Atari TOS which was proprietary but has since been cloned as EmuTOS. http://emutos.sourceforge.net/en/ while you aren't going to be able to run Atari ST games in your board there's a heck of a lot of command line TOS based tools and utilities, plus if you have enough memory GUI desktop apps that will.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 16 May 2017 11:52:48 GMT View Forum Message <> Reply to Message Received the pc board back. The turn-around time is 7 days. Built up the first board to develop CPLD equations. The state machine for serial EEPROM loader is somewhat complex and I don't have a simulator so I'm using the actual hardware to test out the CPLD code. It was going pretty well until my USB Blaster die right in the middle of the testing. It'll be a couple more weeks before I have the replacement. All the Tinyxxx will run Lee Davison's Ehbasic. I'm impressed with Prof Chuck Kelly's EASy68k toolchain so I make them compatible with EASy68K. I have not tried CP/M 68K, mainly because I don't have IDE interface up till now. Tiny68K has the 44-pin CF IDE interface and 16megabyte of RAM, so I'm looking forward to port CP/M68K.

Page 18 of 71 ---- Generated from RetroBrew Computers Forum

File Attachments 1) DSC_24740515.jpg, downloaded 1615 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Tue, 16 May 2017 16:15:06 GMT View Forum Message <> Reply to Message I finally looked at your design and was struck by the similarities to mine. Except somewhere along the line, I switched from the MAX 7128 to the MAX-10 FPGA. And I'm using the 68SEC000 QFP instead of the old DIP version.

I am intrigued by your use of the serial ROM for booting. I thought about that but I wasn't sure I was capable of getting the MAX to load the RAM from it upon reset. So I'm looking forward to seeing how you accomplish that task.

Instead of a XBee and IDE, I'm going for UART, SD card, and Ethernet (via a EthClick module).

My board came out to be 5" square so a bit bigger. Full size SD card takes up a LOT of space!

I'm looking forward to seeing your's progress. good luck! File Attachments 1) m68k-max10.png, downloaded 1517 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 16 May 2017 19:23:05 GMT View Forum Message <> Reply to Message My entire motivation for this design is cost reduction. I really want to see how close I can get to a $10 68000 SBC. So the design choice of serial boot flash on a marginally adequate 7128 are driven entirely by cost consideration. The 7128 design is entirely in schematic, including the state machines. With MAX10, it will be in Verilog which is much easier to code. In fact, serial boot flash is really unnecessary since MAX10 has quite a bit of on-board user flash so 8K bytes of boot code can easily fit in the on-board flash. You can get rid of your two external flash chips.

I want to have a data logger for my home XBEE network that's why XBEE is there. I rather have VGA & Ethernet (mini-ENC28J60) which I think is possible by using a PLCC 68000 and get rid of XBEE. All should still fit in a 100mm sq board, but one step at a time...

Page 19 of 71 ---- Generated from RetroBrew Computers Forum I really like the 100mm sq format because it forces design simplicity, rapid prototyping and spiral development cycle.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Tue, 16 May 2017 19:51:03 GMT View Forum Message <> Reply to Message Using a $25 7128s seems like it'll be hard to get to a $10 board. The MAX-10 is only $17.50! The 29 decoupling caps for the MAX-10 are a definite negative for it.

If I tried using the MAX-10's user flash for the boot ROM image, then I'd either have to add the high 8 bits of the data bus to the MAX-10 using valuable pins or I'd have to copy the ROM contents to RAM like you're doing. Both approaches have risk involved since I haven't done anything significant with a FPGA before! With the external flash for the ROMs, I just need standard chip select functionality from the FPGA before I'd have a minimally working system. The plan is then to add SDRAM support, then a periodic timer, SDIO, and Ethernet. The ETHclick is based upon the ENC28J60 but on a little board with the RJ-45. Someplace along the way I hope to be running ucLinux.

I looked into adding DVI but I was 4 pins short! But if I add video out, then I'd need USB in for keyboard and mouse. So I'd need even more pins! So I decided to put off video for either a daughter board, hence the two 40 pin headers, or for my "real" system.

Speaking of my "real" system, I discovered Coldfire v4/v4e processors last night. 200+ MHz 68000, MMU, FPU, SDRAM controller, PCI controller, UARTs, Ethernet, expansion bus, ... all in one little 388 pin BGA. And NXP is still making them! Add KVM and that would make a nice system. Not very "retro" though.

Too many choices. Not enough money in the toy fund.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 17 May 2017 12:38:40 GMT View Forum Message <> Reply to Message

I bought my lifetime supply of 7128S a few years back at much lesser than $1 each. Admittedly it was an unusual circumstance and not representative of current price. I looked up EPM7128S on aliexpress and found them at about $2-$3 each in lot of 10 or 20. MAX family are very cool, I'd definitely use them for 3.3V designs.

Altera tools are fairly easy to use. Once you got used to them, you'll never go back to simple PLD like 22V10. I don't even own a PLD programmer. I may eventually get one only because that's what I needed to build most of the Retrobrew projects.

Page 20 of 71 ---- Generated from RetroBrew Computers Forum Coldfire is not fully compatible with 68000 instructions but close enough that microapl has a translator that converts 68000 code to Coldfire code. I used it before, it is quite good. mikemac wrote on Tue, 16 May 2017 12:51 Too many choices. Not enough money in the toy fund.

Amen!

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Wed, 17 May 2017 20:44:56 GMT View Forum Message <> Reply to Message I guess I'm too much of an old fuddy duddy worrying about a deal "that's too good to be true" with the random Chinese or Russian suppliers on the net. So I've stuck to Digikey whenever possible. I know that if I ever build my 040 dream machine, that I'll have to bite the bullet and deal with the unknown sources.

As for the Coldfire, since I don't have any 68K binaries, being 100% 68K complete isn't that big of a deal for me. As long as GCC supports the processor and there's a reasonable chance of running Linux, I'm happy. I ran into the Coldfire on the http://firebee.org. It's a Atari ST/Falcon compatible so they're more interested in binary compatibility. Sounds like the Coldfire is good enough for them.

The bigger problem with the Coldfires is that they're essentially complete SoCs. They have just about everything already built in. So where's the fun in that? At that point, I just as well go with a modern ARM SoC running at GHz rates instead of 266 MHz old stuff.

Are you planning on writing your own SDRAM controller or are you going to use/modify one of the "open" implementations that are out there? I sketched out what I thought the VHDL should look like before I went looking. The ones I found pretty much matched what I was expecting. They all have different feature sets but the basics of talking to a SDRAM are the same.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 18 May 2017 00:02:55 GMT View Forum Message <> Reply to Message Some of those deals do seem amazingly cheap and too-good-to-be-true, but I have purchased and played with enough of them over the years that I've came to the conclusion that if the items do not work as expected, the problem is usually with me or my expectations.

I have not designed with SDRAM yet, so I don't know how complex the SDRAM controller would be. Tiny68K uses the old fashion 72 pin SIMM module with an array of 4meg x4 DRAM. The DRAM controller is pretty simple--just a clocked delay line controlling 11-bit address mux and a similar clock delay line generating CAS-before-RAS refresh. The DRAM controller uses 18 flip

Page 21 of 71 ---- Generated from RetroBrew Computers Forum flops and the design for Tiny030 DRAM controller is here: https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=b uilderpages:plasmo:tiny030:tiny030_cpld.pdf Since the address mux is inside the 7128S now, the equivalent circuit for Tiny68K is even simpler than that of Tiny030.

Hark! I thought I've heard talks about 68008 on another line. It's getting interesting...

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 01 Jun 2017 00:20:01 GMT View Forum Message <> Reply to Message This is embarrassing! I received the replacement Altera USB Blaster last week. It works just fine so I'm ready to assemble the rest of the board, so I thought. Imaging my surprise when I realized DIP64 68000 is NOT 600mil wide! Instead it is 900mil wide. After a bit of denial and cursing I decided I can just solder one row, tilt the 900mil 68000 45 degree and connect the other row via wires. I don't suppose anyone would be interested in this version of the pc board now.

The good news is that I used the time waiting for USB Blaster to learn about Altera Quartus' native simulator. It is actually pretty decent and more than adequate for CPLD designs of modest complexity. I'm able to check out most of the serial EEPROM loader functionalities. It appears to be working--I'm able to load a small NOP loop code in serial EEPROM into DRAM, release reset and have 68000 execute it endlessly. A simple memory diagnostic checking part of the 16meg DRAM also works fine.

Between the DRAM controller, serial EEPROM loader, and address decoder I used up 95% of the logics in EPM7128--121 flip flops out of 128 available.

I program the 24C256 use a $5 USB CH341A serial EEPROM programmer. The toolchain for developing serial EEPROM bootcode in 68000 assembly is: write & assemble code in EASy68K-->convert S Record to binary file with EASyBIN-->load the binary file with CH341A.exe and program the AT24C256 serial EEPROM. EASy68K & EASyBIN are downloaded from easy68k.com CH341A can be found from the download link of this youtube instruction on how to use EEPROM programmer: https://www.youtube.com/watch?v=L0ChYNwunUE

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Thu, 01 Jun 2017 03:54:46 GMT View Forum Message <> Reply to Message

Page 22 of 71 ---- Generated from RetroBrew Computers Forum The 68SEC000 would save you a lot of board space!

If you have to have a DIP, you can get a 64 pin QFP to DIP adapter from Digikey. And it is 0.6" row spacing. I used a pair of standard 40 pin DIP sockets on my first board.

The local FPGA guru warned me about how fast the MAX CPLDs fill up. He has ulterior motives though, trying to get me to become a passable FPGA developer. Sounds like you're on your way to that goal! Congratulations!

BTW, is that a resistor I see holding pin 7 up?

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 01 Jun 2017 15:47:18 GMT View Forum Message <> Reply to Message I designed with what I have and I have a number of 68000 in DIP64. Now I remembered it is 900 mil wide, I think I can actually save board space because the CPLD and DUART can fit under the chip freeing up the other half of the 100mm x 100mm board for video and Ethernet.

Yes, it is a 33 ohm serial terminating resistor at the source (address strobe) on pin 6. Early on I thought I had a possible glitch due to reflection, but it was instrumentation error.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 06 Jun 2017 00:35:37 GMT View Forum Message <> Reply to Message Its alive!

All 68000's 16 megabyte memory space is taken up with a 16meg SIMM module except the top 32K bytes which are allocated to 68681 (DUART), IDE, and the expansion edge connector. The DRAM should be fast enough to run at zero wait for the fastest 68000 (20MHz). I have a 68HC000P10 running at 8Mhz right now. The refresh logic is CAS-before-RAS running automatically invisible to the the 68000 by inserting wait state to DRAM access during a refresh cycle. The monitor is about 11K bytes. The serial EEPROM loader loads half (16K bytes) of the AT24C256 into low memory of DRAM at powerup or reset. The serial clock is 500KHz so it takes about 300mS to load the monitor, barely noticeable.

The monitor uses EASy68k trap #15 services for I/O so Lee Davison's EhBasic runs with very little modifications-- two changes: org to 0x4000 & disable DUART interrupts. I got the ASCII art program from tobster's hackaday page and I use it as a performance benchmark. The program takes 102 seconds to run on the 8MHz Tiny68k. It takes 29 seconds on Tiny030, 22MHz 68030.

I built up the board mostly with my existing inventory of parts, but since low cost is the main goal of this project, I look around eBay for 10pcs lot (shipping excluded) to find out how close it comes the $10 goal:

Page 23 of 71 ---- Generated from RetroBrew Computers Forum 68HC000P10, $3 68681, $2 16meg SIMM72, $4 SIMM72 socket, $1.5 24C256, $0.4 Oscillator, $1 Altera EPM7128SQC100-15, $3 pc board, $0.5

So that's $15.4 for major parts and probably $2 for miscellaneous parts. Definitely over $10, but it is about $10 if you already have spare 68000, 16 mega SIMM, and miscellaneous parts,

File Attachments 1) Tiny68kbug.jpg, downloaded 1340 times 2) ehbasic_ascii_art.jpg, downloaded 1353 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Tue, 06 Jun 2017 01:44:39 GMT View Forum Message <> Reply to Message Congratulations! Looks impressive! I look forward to studying your MAX CPLD code. I'm sure I'll learn a lot.

While dreaming in the shower this morning, I was considering spinning your design to use the 68sec000 and other Digikey/Mouser parts. I must have been picking up the success you were having.

Are you going to port ucLinux to it now?

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 06 Jun 2017 17:43:20 GMT View Forum Message <> Reply to Message ucLinux is a huge jump for me. I used Unix once in a blue moon and never Linux. I'm taking baby step by first adding the Compact Flash IDE, then try porting CP/M68K or the EmuTOS suggested by etchedpixels. I'll respin the board to correct mistakes and add needed features, but this board may not be suited for Linux. I may change my mind later, but at this point I'm not particularly interested in Linux.

Subject: Re: Plasmo's 68k pathfinder projects

Page 24 of 71 ---- Generated from RetroBrew Computers Forum Posted by tingo on Tue, 06 Jun 2017 19:06:53 GMT View Forum Message <> Reply to Message Nice progress! Is anyone going make a kit out of this?

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Tue, 06 Jun 2017 21:58:32 GMT View Forum Message <> Reply to Message Are you only using half of the SIMM? Looking at the schematic, you have the high word (16b) and the low word (16b) of the SIMM connected to the 16b data bus of the 68K. Seems like you're either using half of the available memory or you're interleaving the 68K's word accesses. Since you're only using 2 of the 4 RAS signals, I'm leaning towards using half of the capacity. Your SIMM is probably bigger than the 16MB address range of the 68K so it doesn't matter if you are only using a fraction.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 07 Jun 2017 01:11:33 GMT View Forum Message <> Reply to Message tingo wrote on Tue, 06 June 2017 12:06Nice progress! Is anyone going make a kit out of this?

I don't think anyone would be interested in this version of pc board because of a major error in the 68000 footprint. Once I make the correction, it will be available to anyone interested. One issue is that I'm very fond of Altera's 7128S (5V CPLD, abundant I/O pins, excellent development tools that's free, in-situ programmability, low cost and I happen to have a large supply on hand) which is a surface mount part. Many people have problems soldering this part. I suppose I can sell a board with 7128S already soldered & programmed, but that'll rob people the pleasure of building board from scratch.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 07 Jun 2017 01:13:35 GMT View Forum Message <> Reply to Message mikemac wrote on Tue, 06 June 2017 14:58Are you only using half of the SIMM? Looking at the schematic, you have the high word (16b) and the low word (16b) of the SIMM connected to the 16b data bus of the 68K. Seems like you're either using half of the available memory or you're interleaving the 68K's word accesses. Since you're only using 2 of the 4 RAS signals, I'm leaning towards using half of the capacity. Your SIMM is probably bigger than the 16MB address range of the 68K so it doesn't matter if you are only using a fraction.

The 72-pin SIMMs I have are populated on one side only with eight 4megx4 (e.g. HY5117404) DRAM, so that's 16 megabytes. My understanding of one-sided 72-pin SIMM is that RAS0 goes

Page 25 of 71 ---- Generated from RetroBrew Computers Forum with CAS0 (low byte) and CAS1 (high byte) and RAS2 goes with CAS2(low byte) and CAS3 (high byte). RAS1 & RAS3 are for the other side which is unpopulated. The way I map the memory is 0x0-0x7FFFFF to RAS0/CAS0/CAS1 while 0x800000-0xFF7FFF to RAS2/CAS2/CAS3. When refreshing all CAS0-3 and RAS0/RAS2 are activated which does created quite a current spike and need to be managed with bypass & filter caps plus multiple ground traces

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Wed, 07 Jun 2017 03:39:10 GMT View Forum Message <> Reply to Message Thanks for the explanation.

Subject: Re: Plasmo's 68k pathfinder projects Posted by adx on Thu, 08 Jun 2017 14:24:16 GMT View Forum Message <> Reply to Message What are the hardware requirements to program the Altera's in-situ. Is it reasonable or a $500 Altera specific programmer that's needed?

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 08 Jun 2017 15:27:40 GMT View Forum Message <> Reply to Message The Altera USB blaster is dirt cheap. My old one died a month ago so I ordered 3 more on eBay: http://www.ebay.com/itm/3Pcs-Programmer-For-Cpld-Fpga-Nios-J tag-Altera-Mini-Usb-Blaster-Cable-Module-I-Z-/262937625518 They are $9 plus $1.80 shipping (slow mail, 2+ weeks to deliver), so that works out to lesser than $4 each. I took a snapshot of how it is used on my board this morning. To program it in-situ, I powered up the board, click the "start" button on the Altera programmer software and it will reprogram the chip in 10-20 seconds. I leave the USB blaster connected as I debug because I can reprogram the Altera part over and over again bringing out internal signals to spare outputs to help me debug. I believe you can reprogram the part many hundreds of times.

File Attachments 1) DSC_26690608.jpg, downloaded 1285 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Thu, 08 Jun 2017 17:08:02 GMT View Forum Message <> Reply to Message

Page 26 of 71 ---- Generated from RetroBrew Computers Forum Argh! Your progress has inspired me to go back and look at my MAX10 based 68K design. And I just noticed that somewhere along the design process, I dropped D8 from connecting to the MAX10! Going to make it hard to implement all of those soft I/O devices in the FPGA without the low data bit!

Subject: Re: Plasmo's 68k pathfinder projects Posted by nealcrook on Fri, 09 Jun 2017 21:34:22 GMT View Forum Message <> Reply to Message >> I built up the board mostly with my existing inventory of parts

I get the feeling that looking through your "junk box" would be quite exciting. Thanks for sharing all the details of your builds. I even got lured into buying a 68020 on ebay, to go with the 68000s and 68008 I already have sitting in my own, modest, junk box.

Neal.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 10 Jun 2017 16:45:13 GMT View Forum Message <> Reply to Message I do have a sizable collection of 68xxx processors & peripherals thus my interest in building them. I've always considered 68xxx along with National's 32xxx as having the best computer architectures of their times. It is a pleasure tinkering with these processors.

Subject: Re: Plasmo's 68k pathfinder projects Posted by lynchaj on Sat, 10 Jun 2017 17:04:07 GMT View Forum Message <> Reply to Message Interested in NS32K projects?

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 10 Jun 2017 18:27:09 GMT View Forum Message <> Reply to Message lynchaj wrote on Sat, 10 June 2017 10:04Interested in NS32K projects?

Yes and I've followed the discussion closely. BUT...I don't meant to be critical, but I thought it is too ambitious, at least for me. Since we are just dipping our toes in the NS32K processors, I thought we should start simple, small & cheap and experiencing the architecture of 32xxx at ground level. NS32008 with NS32202, DUART, RAM, Flash, CPLD, & IDE44 should fit in a cheap 100mm x 100mm 2-layer board. That's sufficient to learn NS32K assembly language, write a

Page 27 of 71 ---- Generated from RetroBrew Computers Forum monitor/debugger in assembly and graduate to some sort of disk operating system. In fact, I already have a small hoard of NS32008 and I've contacted John Coffman to see if I can buy some NS32202 so I can pursue a simple, small, cheap solution. I know I'm not being a team player going off by myself like this, but NetBSD & high level language seem such a big leap and so disconnected from the heart & soul of 32xxx architecture, IMHO

Subject: Re: Plasmo's 68k pathfinder projects Posted by pbirkel on Sun, 11 Jun 2017 07:19:55 GMT View Forum Message <> Reply to Message plasmo wrote on Sat, 10 June 2017 11:27I thought it is too ambitious, at least for me. Since we are just dipping our toes in the NS32K processors, I thought we should start simple, small & cheap and experiencing the architecture of 32xxx at ground level. NS32008 with NS32202, DUART, RAM, Flash, CPLD, & IDE44 should fit in a cheap 100mm x 100mm 2-layer board. That's sufficient to learn NS32K assembly language, write a monitor/debugger in assembly and graduate to some sort of disk operating system. In fact, I already have a small hoard of NS32008 and I've contacted John Coffman to see if I can buy some NS32202 so I can pursue a simple, small, cheap solution.

FWIW, this is the entry-level that I'd like to eventually pursue, as well. "experiencing the architecture of 32xxx at ground level" is a great summary statement :->!

Subject: Re: Plasmo's 68k pathfinder projects Posted by lynchaj on Sun, 11 Jun 2017 14:10:17 GMT View Forum Message <> Reply to Message plasmo wrote on Sat, 10 June 2017 14:27lynchaj wrote on Sat, 10 June 2017 10:04Interested in NS32K projects?

Yes and I've followed the discussion closely. BUT...I don't meant to be critical, but I thought it is too ambitious, at least for me. Since we are just dipping our toes in the NS32K processors, I thought we should start simple, small & cheap and experiencing the architecture of 32xxx at ground level. NS32008 with NS32202, DUART, RAM, Flash, CPLD, & IDE44 should fit in a cheap 100mm x 100mm 2-layer board. That's sufficient to learn NS32K assembly language, write a monitor/debugger in assembly and graduate to some sort of disk operating system. In fact, I already have a small hoard of NS32008 and I've contacted John Coffman to see if I can buy some NS32202 so I can pursue a simple, small, cheap solution. I know I'm not being a team player going off by myself like this, but NetBSD & high level language seem such a big leap and so disconnected from the heart & soul of 32xxx architecture, IMHO

Without an MMU there is no VM and no hope of NetBSD or any other sophisticated operating

Page 28 of 71 ---- Generated from RetroBrew Computers Forum system. Its essentially just another 8 bit with a neat 32 bit ISA. Interfacing to the outside world though is still just 8 bits. If you want to do that its OK but its not where my interests are.

I think NS's original goal was sophisticated operating systems which seems pretty obvious from their ISA, datasheets, and application notes. I think they settled for embedded controllers when Intel and Motorola beat them to market. I think the PC532 or something like it (Symmetric 375) is the way to go.

Good luck with your project though. Andrew Lynch

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 11 Jun 2017 17:40:33 GMT View Forum Message <> Reply to Message Clearly I have a lot to learn.

[quote title=lynchaj wrote on Sun, 11 June 2017 07:10]plasmo wrote on Sat, 10 June 2017 14:27lynchaj wrote on Sat, 10 June 2017 10:04Interested in NS32K projects?

Good luck with your project though.

Thanks!

Subject: Re: Plasmo's 68k pathfinder projects Posted by davetypeguy on Sun, 11 Jun 2017 18:11:49 GMT View Forum Message <> Reply to Message Plasmo wrote: "I've contacted John Coffman to see if I can buy some NS32202 so I can pursue a simple, small, cheap solution ..."

In case John doesn't want to part with too many of the NS32202 chips (he has them for building the PIC boards, after all), you can get the NS32202N-10G from Quest Components. They have a large stash of them, and they aren't expensive. I bought a few myself recently while getting some other ICs.

http://www.questcomp.com/questdetails.aspx?pn=NS32202N-10G&a mp;mpid=433021897&pt=4

Dave

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Mon, 12 Jun 2017 05:28:20 GMT

Page 29 of 71 ---- Generated from RetroBrew Computers Forum View Forum Message <> Reply to Message Thank you for the link, it is downright cheap! In quantity of 5 to 15 it is 99 cents each , wow!

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 02 Jul 2017 23:20:10 GMT View Forum Message <> Reply to Message Hey, I may have a CP/M 68K v1.3 working on my Tiny68K! pictured here: https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=152&goto=3022&#msg_3022

"DIR" gets me this listing:

"ED.REL Hello.txt" and "DDT.REL" get me this:

I've never had a CP/M computer so I'm unfamiliar with the various commands and functions. I feel like a kid on Christmas morning opening his first computer. I'm following the instructions of "CP/M-68K operating system System Guide", modifying the sample BIOS to fit my serial device and CompactFlash and uploading the BIOS along with cpm15000 S-Record. The kludgy part was moving CP/M distribution files downloaded from http://www.cpm.z80.de/download/68kv1_3.zip into a CompactFlash and convert into CP/M directory format on my Tiny68k. Still many things to check out, but I've cracked open the door and the world beyond bckoning! File Attachments 1) cpm1.jpg, downloaded 1123 times 2) cpm2.jpg, downloaded 1129 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 02 Jul 2017 23:52:14 GMT View Forum Message <> Reply to Message Some performance specs: - The 68000 is running at 8MHz, serial port is 38.4k baud. - Power consumption is 350mA at 5V. - Memory access to the 16meg DRAM is zero wait state. - Compactflash IDE is bus connected with 1 wait state access. - CF (SanDisk as pictured) read access is 250K bytes/sec, write access is 45K bytes/sec. - All 9 floppy disks from the CP/M v1.3 are copied into drive A which is 8 megabyte, block size of 2048 bytes and 512 directory entries. - I allocated most of the 16meg memory for TPA which is from 0x20000 (just above CP/M) to 0xE20000, about 14 megabytes. - Since this is my first CP/M machine, I have no speed reference. "DIR" command responds

Page 30 of 71 ---- Generated from RetroBrew Computers Forum immediately, the bottleneck is the 38.4kbaud serial port. Is there a benchmark I can run against? - I have not figured out how to block/deblock 128 byte/sector of CP/M into 512 byte/sector of the CF, so each 128-byte CP/M sector takes a full 512-byte CF sector--very wasteful, something to work on in the near term.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Mon, 03 Jul 2017 04:18:22 GMT View Forum Message <> Reply to Message Congratulations! At this point, I can only imagine the joy of seeing your creation come to life, opening up a new world to explore and play in.

I've never actually used CPM either. Somehow just missed that whole thing. Almost got to 25-30 years ago with a Big Board but the 74138 was bad and the 8" floppies wouldn't work. So I wussed out and went back to Suns and Lisp Machines.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Mon, 03 Jul 2017 04:27:50 GMT View Forum Message <> Reply to Message I just read your updated Design page. I thought you were originally going to program the serial PROM through the USB Blaster. But I see you're now using an external programmer and that the serial PROM is socketed. Other than being easier to use the external programmer, was there a problem using the USB Blaster?

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Mon, 03 Jul 2017 17:17:52 GMT View Forum Message <> Reply to Message Perhaps you are thinking of the Altera serial PROM (such as the EPC1) needed to program their FPGA devices such as Cyclone? The EPC1 is designed to interface with Altera's USB Blaster. Tiny68K uses Altera's EPM7128 which has internal flash memory and can be programmed in-situ with an USB Blaster. Tiny68K does have a serial EEPROM,AT24C256, but it is used to store up to 32K bytes of 68000 boot program which is loaded into DRAM while 68000 is held in RESET. AT24C256 is not compatible with USB Blaster and I was thinking of building my own AT24C256 programmer, but when a working programmer can be purchased for lesser than $10, it is hard to justify the extra efforts.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Mon, 03 Jul 2017 20:03:11 GMT View Forum Message <> Reply to Message

Page 31 of 71 ---- Generated from RetroBrew Computers Forum Nope. I had thought you had figured out a way to program the AT24C256 in place through the MAX7000 using the USB Blaster. Similar to how you can flash some of the external configuration PROMs through some of Altera's FPGAs. I thought that would be a nifty trick to know if you had. I guess for the time being we're still stuck with socketed boot ROMs.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Mon, 03 Jul 2017 22:01:24 GMT View Forum Message <> Reply to Message Your comment triggered 2 thought processes: The first one is the ability to re-program the at24C256. This is later than the version of EPLD design files I uploaded: I added bit-bang registers controllable by 68000 for at24C256's SCL(clock) & SDA(data), so now an updated software can be downloaded into 68000, test to make sure it works and then 68000 can updates the at24c256 via the bit-bang registers. Of course if the updated software has a serious bug, it is back to removing the serial EEPROM and programming it on a programmer.

The 2nd thought is use Altera EPC1 for serial EEPROM instead. I already have an Altera JTAG programming header so it is easy to add the EPC1 into the scan chain. I should be able to convert the serial bit stream into 16-bit parallel data and write it into DRAM--I've already done that with at24c256. The part I don't know is whether Quartus software can take 68000 binary or S record and convert that to .mif file and program it into EPC1. If all that work out, boot software development looks like this: 68000 Assembler/compiler --> s record --> Altera .mif -->load into EPC1 via USB blaster -->boot!

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Tue, 04 Jul 2017 16:18:58 GMT View Forum Message <> Reply to Message Hey Plasmo --

Welcome to the wonderful (and sometimes very strange) world of 68k CP/M!

>> - I have not figured out how to block/deblock 128 byte/sector of CP/M into 512 byte/sector of the CF, so each 128-byte CP/M sector takes a full >> 512-byte CF sector--very wasteful, something to work on in the near term.

If you have an e-mail addr., I can send you a copy of my BIOS that does the block/deblock. Works quite well on my 12 MHz 68k (all TTL - no programmable devices (except EPROMs). Too big to post here. It only supports 4 "drives" on the CF, however. You will have to agree not to laugh too hard (I'm a lousy 68k assembler programmer), and to send me your updates when you improve it. *grin*

Roger

Page 32 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 04 Jul 2017 19:38:49 GMT View Forum Message <> Reply to Message Roger, Thank you for your help. PM sent. I really like "A Simple Approach" described in section 5.3.1 of CP/M-68K System Guide, but the author discouraged the method! I'm also interested in how you created 4 (or more) drives on a CF. My method was adding successive drives each with track offset greater than the total tracks of the previous drives. It works, but seems a dangerous method because writing boot with PUTBOOT would potentially corrupt the previous drives. My truly burning question was how to transfer files to/from PC (Windows Vista) to CP/M. I don't have a Linux machine and my hardware does not support floppy disks, CompactFlash is all I got. The way I go from PC to CP/M was to create a CP/M image with cpmtools and write the resulting image to a newly (FAT16) formated CF. Then move the CF to the CP/M machine, located the beginning of the image and copy it starting from sector 0 of the CF. It works, but I can think of many ways it'd blew up. I have absolutely no idea how to transfer CP/M back to FAT16--I'm just not smart enough today to write a FAT16 driver in CP/M. Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Wed, 05 Jul 2017 06:11:00 GMT View Forum Message <> Reply to Message Hi Bill,

>> I really like "A Simple Approach" described in section 5.3.1 of CP/M-68K System Guide, but the author discouraged the method!

Not sure what you mean. The simple approach is what I used (I think). Full track, and other caching methods would take a lot more work.

> I'm also interested in how you created 4 (or more) drives on a CF.

What I did was to create a filesystem for the first drive, mount the CF, and initialize (with INIT) the other 3 drives. Then you can copy (with PIP?_) the A: filesystem to B:, C:, or D:. Then repeat to load up the other non-A: filesystems. You can also use cpmtools to build B:, C:, or D: and then write a little C code to move over the first "disk" and copy to another. I'm a Linux guy, so this is pretty easy to do. dd will also work, but is more dangerous.

> My truly burning question was how to transfer files to/from PC (Windows Vista) to CP/M.

I wrote a little utility that reads S-record files, and saves them to "disk" (the CF). I convert source files to S-records and move them over that way. Works most of the time.

>> I have absolutely no idea how to transfer CP/M back to FAT16--I'm just not smart enough today to write a FAT16 driver in CP/M.

Page 33 of 71 ---- Generated from RetroBrew Computers Forum No need. Most terminal emulators have a capture function. You can "type" ascii material and capture it with your terminal emulator (assembly listings, for example). 68k CP/M also has a DUMP application, and one called "SENDC68" (I think I remembered that name correctly?_) you can use to display binary, and again capture it with your emulator. I wrote a little application that I call "eatdmp" that converts dump format back to binary, and there are a number of applications you can find on-line to work with S-records (the output from "SENDC68").

Hope this helps.

I'm really interested in your work with 68020, 68030, etc. Would love to get a CPU like that going. *grin*

Roger

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 05 Jul 2017 17:13:25 GMT View Forum Message <> Reply to Message Roger, Got your BIOS. Many thanks!

It is interesting that we started with the same sample BIOS, and CPM15000.SR, use the same 68681 DUART and CompactFlash, yet our codes are so different. I put my BIOS code as it stands today in here for your reference. https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=b uilderpages:plasmo:tiny68k:tinybios.txt

Thanks for the suggestions of using S Record file transfer & terminal screen capture to move data to/from CP/M and PC. That may well be the solution in the near term.

From what I have read in the past year on the subject of retrocomputing, A Linux machine appeared to be a critical tool. Somehow I need to find space on my cluttered desk to accommodate another box and monitor & learn another operating system. heavy sigh!

Thank you for your interests in the 68020 & 68030. I designed them to make sure that parts & tools I have on hand are working. These designs are simple and limited in capabilities. I want to explore the world of DRAM, IDE, VGA, Ethernet and Operating Systems with cheap 68000 designs and then migrate the hardware designs into 020, 030 and even 040. Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Wed, 05 Jul 2017 17:31:21 GMT View Forum Message <> Reply to Message

Page 34 of 71 ---- Generated from RetroBrew Computers Forum Hi Bill,

Thanks for your BIOS code. I'll take a detailed look. I find that 68k CP/M is quite different than the Z80 CP/M that I'm most familiar with. Z80 CP/M wants the O.S. to be at the highest memory addresses. Not so with 68k CP/M. But, there are strong similarities too, such as the 100h reserved area that is the "base page". Please note that there is no DUART initialization included in my BIOS. I start it up from a monitor that does that! Also note that I only use lba0 and lba1, so lba2 and the bits of lba3 that are available can be used to address other "drives" on the CF (with much more programming).

If screen capture is too slow for you, take a look at the parallel to USB adapters that can be found on eBay (such as http://www.ebay.com/itm/FT245-USB-FIFO-Board-mini-FT245RL-De velopment-Module-Kit-USB-TO-parallel-FIFO/251042147761?ssPag eName=STRK%3AMEBIDX%3AIT&_trksid=p2060353.m1438.l2649)_. These things can transmit across USB at speeds that are truly amazing. I've found that the 68k doesn't even need to look at the status bits when it sends. Just pump out the data in a tight loop, at ~115k baud.

Roger

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 05 Jul 2017 20:10:23 GMT View Forum Message <> Reply to Message Roger, I also do not initialize the DUART in the BIOS since it is already initialized in my monitor.

Both our drives are the same size, 8 megabyte. Since I defined my drive with 256 sectors per track and 255 tracks per drive and furthermore each drive is offset by multiple of 256 tracks (drive B is offset 256 track, drive C is offset 512 tracks, and drive D is offset 768 tracks), I don't do any translation between CP/M sector/track/drive to CF sector/track--just copy track & sector values provided by CP/M into CF registers and execute read or write commands. It won't be quite this simple when block/deblock algorithm is implemented.

I gather your CF is bus connected with 16-bit data bus, just like mine. You may noticed that I don't do byte swap when I read the 16-bit data. This is because when I processed the CP/M image created by cpmtools, I did the byte swap and then copy the byte-swapped image back into a CF starting from sector 0, thus creating a CP/M disk partition with bytes already swapped. In the back of my mind I expect to be burnt by this little trick sooner or later...

Retrobrew forum member 'will' has designed a USB FIFO for file transfer. It is based on FTDI's FT232H. https://www.retrobrewcomputers.org/doku.php?id=boards:ecb:us b-fifo:start It is another reference design for adding high speed transfer capability.

On a different topic, are you the same Roger on comp.os.cpm a few months ago who was having trouble running CPM400.SR? I want you to know that I have problem with CPM400.SR as well. I

Page 35 of 71 ---- Generated from RetroBrew Computers Forum used the same procedure as CPM15000.SR and make sure the BIOS is linked correctly. When I go to 0x400, I'll get the >A prompt, but next keystroke will hang up the CPU with the CF disk access light turned on forever. I have 16 megabyte of memory so I'm not concerned about throwing away 128K byte of memory but I'm curious, did you figured out what's the problem was? Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Wed, 05 Jul 2017 22:06:52 GMT View Forum Message <> Reply to Message Hi Bill --

>> It won't be quite this simple when block/deblock algorithm is implemented.

No, but the way I did it is a little more complicated than it needs to be. I wanted to use the lba bits carefully, so as to allow for future expansion to more "drives". That's why only lba0 and lba1 are used.

>> I gather your CF is bus connected with 16-bit data bus, just like mine.

Yes, and I wonder why you are not having the problems that I'm having. As I told you, my 68k boards are completely TTL, and I find that the direct interface has very tricky timing. I experimented with using an 8255 for the interface, but it is horribly slow. A friend in Norway came up with a way to get the timing right using a dual multivibrator chip, but calibrating that circuit is quite tricky as well. It seems to be speed limited too, maybe 6 or 7 MHz, on top of that. I'm experimenting with using delay lines now to get the timing right, and it seems to work most of the time. I'm running with DTACK* grounded at 12 MHz, but I cannot get the Digital Research BASIC compiler to work properly. It compiles an application OK, but when I try to run the result I get exceptions. I have it working on another of my 68k boards with the multivibrator interface and slower clock, so I'm pretty sure that the BASIC compiler pushes my direct interface to the point of failure. Haven't figured out why.

So, what is the secret of your CF interface? Is the difference programmable logic?

>> Retrobrew forum member 'will' has designed a USB FIFO for file transfer. It is based on FTDI's FT232H.

Yep, that's the one. Well, very similar to what I was suggesting. There are a number of parallel to USB devices out there (one very expensive one is made by FTDI). USB transfer can be very fast!!

> ... are you the same Roger on comp.os.cpm a few months ago who was having trouble running CPM400.SR?

Yep, that's me. I was never able to figure out why that wouldn't work. But the CPM15000.SR image works fine. Maybe some day I'll work on relocating an image a little lower in memory, but as you say with all that memory, is it worth worrying about? I haven't even come close to pushing

Page 36 of 71 ---- Generated from RetroBrew Computers Forum the limits of 2 MB memory on my boards, so your 16 MB seems HUGE to me! *grin*

Roger

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 06 Jul 2017 00:06:24 GMT View Forum Message <> Reply to Message Roger, Somewhere in the CF spec is the requirement that nIORD or nIOWR assert 70ns after nCS0 or nCS1 asserts. It needs to assert for 165ns before negating. After that nCS0 or nCS1 may negate and address change. I meet the timing spec with one wait state when accessing CF. The output of the DTACK gates nIORD or nIOWR thus giving it a delay of 70ns after the assertion of CF chip select. nIORD, nIOWR and nIDECS negate when nAS negates. The design file is here but the logic is scattered over two sheets. https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=b uilderpages:plasmo:tiny68k:tiny68kcpld.pdf

Here is the same logic redrawn.

At 12MHz I don't believe you can meet the timing spec with DTACK grounded. You need to add at least one wait state, two wait states give you more margin considering you are using analog circuits. ------Well, it is good to review my circuit. As I go through the timing to explain how it works, I find out it DOESN'T! The wait state generator does not generate one wait state as I've thought. I'm in fact accessing the CF with zero wait. At 8MHz I barely meeting the timing spec of 70ns setup time. I'm meeting the 165ns hold time comfortably. The circuit should works as is, but I'll need to add one more stage of flip flop if I want to raise the clock to 12MHz. edit: Measure the actual timing with my scope. Yes, I'm accessing the CF with zero wait state. The time from nIDECS0 assert to nIORD asserts is 124ns. nIORD asserts for 194ns and negates the same time as nIDECS0. All works out OK. One more example of "luck beats skill any day!" File Attachments 1) CF access logic.jpg, downloaded 1193 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Thu, 06 Jul 2017 03:16:20 GMT View Forum Message <> Reply to Message Bill --

Page 37 of 71 ---- Generated from RetroBrew Computers Forum From what you have said, I believe that I'm cutting the IORD/IOWR assertion too close. I think my delay is only around 30 n.s. I think I have a way to increase that to about 50 n.s. (easily) I'm holding it for about 160 n.s. Maybe I'm working with an out-of-spec. CF? It is a Transcend 2GB 133x. I need a good wait state generator (in TTL). Do you think that this will work?

>> One more example of "luck beats skill any day!" How true!!! Roger File Attachments 1) plasmo.png, downloaded 1109 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 06 Jul 2017 04:23:47 GMT View Forum Message <> Reply to Message Roger, Q1* is one wait state Q2* is two wait states Q3* is three wait states

That was my mistake: I thought *Q0 is one wait state, but that's not so. Does DTACK* goes to an open collector drive? You are sharing DTACK* with 68681, right? So you need an open collector driver. Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Thu, 06 Jul 2017 13:11:40 GMT View Forum Message <> Reply to Message plasmo wrote on Sun, 02 July 2017 16:52Some performance specs: - I have not figured out how to block/deblock 128 byte/sector of CP/M into 512 byte/sector of the CF, so each 128-byte CP/M sector takes a full 512-byte CF sector--very wasteful, something to work on in the near term.

CF and SD cards are not designed to expect a lot of rewrites of the same block except in the FAT area with a DOS style fs. From a performance and a card life point of view you may well be better off just using 128 bytes of each block rather than being clever in the BIOS code.

CP/M 3 supports other sizes including 512 byte blocks but this never made CP/M 68K as far as I know because CP/M 68K had a rather brief and very unsuccessful life, being slaughtered in the market by OS/9 68K, and turning into Atari TOS.

Page 38 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Thu, 06 Jul 2017 16:36:07 GMT View Forum Message <> Reply to Message >> CF and SD cards are not designed to expect a lot of rewrites of the same block except in the FAT area with a DOS style fs. >> From a performance and a card life point of view you may well be better off just using 128 bytes of each block rather than >> being clever in the BIOS code.

Actually, the block/deblock described here will *reduce* the writes/rewrites to the CF. Blocking delays writes/rewrites that are not critical ( non-directory I/O_)_wherever possible.

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Fri, 07 Jul 2017 18:51:17 GMT View Forum Message <> Reply to Message Hi Bill,

>>Does DTACK* go to an open collector drive? You are sharing DTACK* with 68681, right? So you need an open collector driver.

I'm using a 'LS21 to monitor DTACK* coming from several sources. The DTACK* coming from the CF interface just hooks up to one of the unused inputs.

I built a wait state generator from the circuit posted here. Seems to work fine. I'm still experimenting with it. Need to hook up a 'scope to look at what's happening, but so far, so good.!

Roger

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 07 Jul 2017 19:44:59 GMT View Forum Message <> Reply to Message Roger, I modified my BIOS to include the block/deblock algorithm you provided. You can find the source code here: https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=b uilderpages:plasmo:tiny68k:tinybios1.txt It is simpler than yours because I set the sector size to 1024 and each drive has an track offset of 64 from previous drive. So it is not necessary to convert track/sector values from CP/M to CF track/sector values. Disk utilization is now 1/4 that of disk without block/deblock. The program appears to run faster as well. Thank you for your help!

Page 39 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 08 Jul 2017 00:00:37 GMT View Forum Message <> Reply to Message etchedpixels wrote on Thu, 06 July 2017 06:11plasmo wrote on Sun, 02 July 2017 16:52Some performance specs: - I have not figured out how to block/deblock 128 byte/sector of CP/M into 512 byte/sector of the CF, so each 128-byte CP/M sector takes a full 512-byte CF sector--very wasteful, something to work on in the near term.

CF and SD cards are not designed to expect a lot of rewrites of the same block except in the FAT area with a DOS style fs. From a performance and a card life point of view you may well be better off just using 128 bytes of each block rather than being clever in the BIOS code.

CP/M 3 supports other sizes including 512 byte blocks but this never made CP/M 68K as far as I know because CP/M 68K had a rather brief and very unsuccessful life, being slaughtered in the market by OS/9 68K, and turning into Atari TOS.

The current blocking/deblocking algorithm is not sophiscated. The main saving is CF disk space, but it can be argued that the CF disk is cheap and the saving is not worth the complexity, a point well taken. In term of performance, blocking has faster CF reads, but deblocking has slower CF writes because of the extra reads-before-writes. The number of writes are the same between the two algorithms so same amount of wear on CF. The CF should have wear-leveling of the entire disk, but life expectancy of CF is always a concern and this simple algorithm is not helping nor hurting. I did a couple quick performance comparisons. Copying entire disk A: to disk C: (2200 Kbytes, 126 files) takes 190 seconds for BIOS with blocking/deblocking and 248 seconds for BIOS without blocking/deblocking; executing the reloc1.sub batch file (SUBMIT RELOC1) takes 28 seconds for BIOS with blocking/deblocking and 34 seconds for BIOS without. It is 20-30% faster.

Subject: Re: Plasmo's 68k pathfinder projects Posted by rhkoolstar on Sat, 08 Jul 2017 06:21:18 GMT View Forum Message <> Reply to Message In my view blocking/de-blocking helps in extending card life. Because a 512 byte sector is built in RAM before it is written to disk, in the best situation, only one write bappens, instead of four, when only 128 bytes per sector sectors are used. On average I would expect at least halving the active disk writes. It does not help with directory writes though.

Besides, I would not worry too much about excessive writes. Compared to more modern OSes CP/M disk writes are sparse.

Rienk

Page 40 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 13 Jul 2017 16:13:14 GMT View Forum Message <> Reply to Message rhkoolstar wrote on Fri, 07 July 2017 23:21.

Besides, I would not worry too much about excessive writes. Compared to more modern OSes CP/M disk writes are sparse.

Rienk

I modified the BIOS and added a 8 meg RAM drive to drive E. https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=b uilderpages:plasmo:tiny68k:tinybios_rd.txt The size of TPA is reduced to 7 meg. The RAM drive algorithm is quite small, only about a dozen or so instructions--no blocking/deblocking, no wait on CF interface, just simple read/write to memory. Yet, when I did a benchmark copying entire disk A: to E: (2200kbytes, 126 files), it takes 137 seconds compare to 190 seconds CF to CF copy. execute the RELOC1.SUB in RAM drive takes 24 seconds instead of 28 seconds in CF. The improvement is much smaller than my recollection of the RAM drives speed-up. It is hardly worth the efforts except for the saving on CF write wearing. Perhaps CF accesses are particularly efficient and perhaps CP/M does the minimum disk I/O as you've pointed out.

Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Thu, 13 Jul 2017 22:21:00 GMT View Forum Message <> Reply to Message I could argue this both ways. If you update 128 bytes at a time randomly you could potentially have 4 times the writes to the same block. You really only win if writes are sequential (which happens a lot). If you had a deep cache of blocks in memory you could gain some advantage but copy on modify could not predict either, so really you are doing more potential writes to the same block then 128 bytes per block. I prefer the packing as I don't like leaving holes on the disk and I doubt the wearing of the card is going to be a major problem in my life time of usage.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Fri, 14 Jul 2017 00:03:53 GMT View Forum Message <> Reply to Message plasmo wrote on Thu, 13 July 2017 09:13The improvement is much smaller than my recollection of the RAM drives speed-up. It is hardly worth the efforts except for the saving on CF write wearing. Perhaps CF accesses are particularly efficient and perhaps CP/M does the minimum disk I/O as you've pointed out.

Since all accesses are being gated by the 8MHz clock of your CPU, I'd expect both your slow SDRAM and your fast CF to have a similar speed. I'm guessing that if you added up the cycles for

Page 41 of 71 ---- Generated from RetroBrew Computers Forum accessing the DRAM that they'd come out pretty close to the number of cycles accessing the CF. Looks like the DRAM wins by one or two cycles.

RAM disks really made a difference when our 486/Pentiums running at 66MHz were trying to access our really slow MFM drives. Or even worse, floppy drives!

At 8MHz, everything is equally slow.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 14 Jul 2017 03:13:38 GMT View Forum Message <> Reply to Message yoda wrote on Thu, 13 July 2017 15:21I could argue this both ways. If you update 128 bytes at a time randomly you could potentially have 4 times the writes to the same block. You really only win if writes are sequential (which happens a lot). If you had a deep cache of blocks in memory you could gain some advantage but copy on modify could not predict either, so really you are doing more potential writes to the same block then 128 bytes per block. I prefer the packing as I don't like leaving holes on the disk and I doubt the wearing of the card is going to be a major problem in my life time of usage.

The CF interface protocol requires that every sector read or write move multiple of 512 bytes of data to and from the CF data register. I have not figured out how to gracefully abort the data transfer after 128 bytes. As far as I can find, there are no 'transfer abort' command I can issue. Because of that I'm transferring 512 bytes of data for each CF sector access whether I need 128 bytes or 512 bytes. Even with the simple algorithm without blocking and deblocking, I'd write 128 bytes of actual data followed by 384 zeros to satisfy the CF internal state machine. This is why the amount of write wear is the same whether a CF sector contains 128 bytes of meaningful data or 512 bytes.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 14 Jul 2017 03:15:50 GMT View Forum Message <> Reply to Message mikemac wrote on Thu, 13 July 2017 17:03plasmo wrote on Thu, 13 July 2017 09:13The improvement is much smaller than my recollection of the RAM drives speed-up. It is hardly worth the efforts except for the saving on CF write wearing. Perhaps CF accesses are particularly efficient and perhaps CP/M does the minimum disk I/O as you've pointed out.

Since all accesses are being gated by the 8MHz clock of your CPU, I'd expect both your slow SDRAM and your fast CF to have a similar speed. I'm guessing that if you added up the cycles for accessing the DRAM that they'd come out pretty close to the number of cycles accessing the CF. Looks like the DRAM wins by one or two cycles.

RAM disks really made a difference when our 486/Pentiums running at 66MHz were trying to

Page 42 of 71 ---- Generated from RetroBrew Computers Forum access our really slow MFM drives. Or even worse, floppy drives!

At 8MHz, everything is equally slow.

I think you are right, a slow old CPU interfacing with a fast modern peripheral compresses the memory organization hierarchy. Complexity is unnecessary and the design simplifies. Good, I like that.

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Fri, 14 Jul 2017 09:59:52 GMT View Forum Message <> Reply to Message plasmo wrote on Thu, 13 July 2017 20:13yoda wrote on Thu, 13 July 2017 15:21I could argue this both ways. If you update 128 bytes at a time randomly you could potentially have 4 times the writes to the same block. You really only win if writes are sequential (which happens a lot). If you had a deep cache of blocks in memory you could gain some advantage but copy on modify could not predict either, so really you are doing more potential writes to the same block then 128 bytes per block. I prefer the packing as I don't like leaving holes on the disk and I doubt the wearing of the card is going to be a major problem in my life time of usage.

The CF interface protocol requires that every sector read or write move multiple of 512 bytes of data to and from the CF data register. I have not figured out how to gracefully abort the data transfer after 128 bytes. As far as I can find, there are no 'transfer abort' command I can issue. Because of that I'm transferring 512 bytes of data for each CF sector access whether I need 128 bytes or 512 bytes. Even with the simple algorithm without blocking and deblocking, I'd write 128 bytes of actual data followed by 384 zeros to satisfy the CF internal state machine. This is why the amount of write wear is the same whether a CF sector contains 128 bytes of meaningful data or 512 bytes.

You are correct that the ATA interface protocol does not permit smaller than 512 byte transfers.

A CF card isn't a directly mapped pile of flash memory. It's effectively a small flash based intelligent storage appliance. Whenever you write a 512 byte chunk it tries to put that block into an erased block of flash partially based upon wear levelling algorithms. Each update to the same block causes it to be reallocated into a new block and various meta-data updates to occur which cause other writes and potentially erases. The internal controller (which btw is probably more powerful than the 68K you attached it to is optimised for FAT style behaviour down to having magic support for the FAT area and expecting rewrites to be uncommon.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 16 Jul 2017 11:33:00 GMT

Page 43 of 71 ---- Generated from RetroBrew Computers Forum View Forum Message <> Reply to Message All these discussions about compactflash make me wonder has anyone designed a computer system that boot out CF? Another word, no boot ROM, the first instruction fetch out of reset is from CF? Sure, the CF needs prior initializations to point to the right head/track/sector and a read command, but that can be easily handled with a state machine. In addition, there needs to be some temporary 'magic decoding' so the first few hundred instruction fetches after a reset all go to the CF's data register; once a simple bootstrap is copied from CF into memory and executing, it can restore normal memory map and load CP/M or a monitor software. It is a bit convoluted and needs a modest CPLD (such as my favorite EPM7128) to pull it off, but it seems do-able. Then again, if it is so do-able, someone may have done it already. Though?

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sun, 16 Jul 2017 15:56:19 GMT View Forum Message <> Reply to Message Isn't that what you're essentially doing with your SPI flash? You could have just as easily read the boot sector off of the CF and copied it to 0x0 before releasing RESET.

Or you could memory map the CF's boot sector. But the difference in read sizes between memory (1,2, or 4 bytes) and the CF (128, 512 bytes) usually means you're going to have a "copy" of the boot sector in some memory anyway. So just as well use RAM and do the copy. If you REALLY wanted to avoid the use of any kind of memory buffer, I guess you could reread the boot sector each and every time you wanted to read a word during boot. Obviously that would be a tad slow.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sun, 16 Jul 2017 16:02:23 GMT View Forum Message <> Reply to Message Oh, one other thing. With your SPI flash, you set up the initial read commands and then sequentially do one read after another. That works great for copying the whole boot image. But executing the boot image does not access the image sequentially. Someplace in the boot image will be a loop or jump of some kind. So trying to set up the CF so that you issue a CF read command to it once and read sequentially as the processor executes the image won't work.

At least I don't see how it'd work. If someone better at this knows a trick to do that, I'd love to hear it too!

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Mon, 17 Jul 2017 22:34:54 GMT View Forum Message <> Reply to Message The software bit is the easy bit

Page 44 of 71 ---- Generated from RetroBrew Computers Forum Your instruction sequence is something like moev.w #$1000,a0 moev.l #dword0,(a0)+ move.l #dword1,(a0)+ ... jp $1000 in other words your linear code writes a small loop into RAM and runs it.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Mon, 17 Jul 2017 22:54:22 GMT View Forum Message <> Reply to Message mikemac wrote on Sun, 16 July 2017 08:56Isn't that what you're essentially doing with your SPI flash? You could have just as easily read the boot sector off of the CF and copied it to 0x0 before releasing RESET.

The method you suggested (hardware copying boot sector to DRAM) is a more intuitive approach but that wasn't what I've in mind when I wrote about booting off CF. I may try that if my original idea failed. The original idea is using hardware to initialize a CF so it behaves like a 256-word deep FIFO in address range 0x0 - 0x7FFF immediately after powering up. The first 2 long words of the FIFO is stack pointer and reset vector (0x8) followed by a series of move immediate instructions and ended with a jump instruction to 0x8000. When 68000 comes out of reset and starts program execution at 0x0, the FIFO feeds it the stack pointer, reset vector, then a stream of move immediate which initialize the area starting from 0x8000 with the actual boot strap code and finishes with a jump to 0x8000. At this point it is about where you are suggesting with hardware copying of boot sector to DRAM. It still needs to restore normal memory map to 0x0 - 0x7FFF and copy the monitor or CP/M from CF into memory to complete the booting process.

It occurs to me that my existing board can be easily modified to boot off CF, so I think I should just go do it and see if the idea really works.

Edit: thank you, etchedpixels, that's exactly the code I have in mind.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Tue, 18 Jul 2017 01:54:39 GMT View Forum Message <> Reply to Message OK, I think I understand what you and etchedpixels are proposing. Yeah, that looks like it'd work.

Page 45 of 71 ---- Generated from RetroBrew Computers Forum But why would you want to do that? Other than just to see if it could be done, that is.

Half (? of your 256 word FIFO is taken up with the encoding of all of the immediate moves. So it's seems inefficient.

It's a whole extra set of CPU and memory cycles to get the CPU to do the string of immediate moves. So it seems inefficient that way too.

And it adds an extra step to the steps in preparing the boot image. So that seems like a detriment.

And you still have your state machine in the 7128 to issue the first read commands to the CF to get it started. So not much "savings" there.

But yeah, it'd "work".

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 21 Jul 2017 00:02:53 GMT View Forum Message <> Reply to Message These are valid points. In fact, the encoding of the move immediate data is a pain. I haven't figured out how to do it using assembler directives so I ended up cut & paste the bootstrap opcodes from the assembled listing.

What I am concerned with is the complexity of data transfer from CF to DRAM using the hardware state machine. I want to simplify the hardware and push complexity to software. I was hoping I can design both approaches and provide a quantitative measurement of the complexity, but that didn't work out so far. I'm having problems getting the CF initialization to work in hardware. I can initialize CF reliably in software, but something is different with the hardware state machine that the CF is responding differently.

Well, there are too many (non-electronic) tasks waiting, so I'll put this off to another days.

Edit: The CF initialization for both hardware state machine & software looks like this:

After negation of the Power-on Reset read CF Status register bit 7 (BSY) & bit 6 (DRDY) until (BSY==0 AND DRDY==1) Write 0x1 to CF SectorCount register Write 0x1 to CF Sector register Write 0x0 to CF Cylinder Low register Write 0x0 to CF Cylinder High register Write 0x0 to CF Drive/Head register Write 0x20 (Read) to CF Command register Read CF Status register bit 7 (BSY) & bit 3 (DRQ) until (BSY==0 AND DRQ==1) Remap 0x0 - 0x7FFF to CF Data register and Release 68000 nRESET

If anyone see flaws in CF initialization, please let me know.

Page 46 of 71 ---- Generated from RetroBrew Computers Forum Edit-Edit, The problem I'm having is that I don't see DRQ==1 after writing 0x20 (Read) to CF Command register with hardware state machine, but no problem with software initialization routine.

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Fri, 21 Jul 2017 11:10:13 GMT View Forum Message <> Reply to Message Are you implementing all the time delays required by the ATA and CF standards. In particular your status signals are not immediately valid after a command write. The ATA standards have a complete set of timing diagrams. Your state machine might be fast enough to violate them even if your CPU cannot.

I'm surprised it's easier to have a state machine for the CF rather than one that clocks out the 68K instruction stream (repeating chunks the correct number of times instead of a loop) as the Amstrad PCW does (where they saved a boot rom by hiding the boot code in an 804x I/O microcontroller that managed the printer)

Some devoces also expect you to follow the full initialization process for ATA not just rely on WD1010 compatibility.

Alan

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 22 Jul 2017 03:48:19 GMT View Forum Message <> Reply to Message The IDE spec I referenced to is ANSI X3T10 dated 1994 that specified status needs to be valid within 400nS for the READ command. My state machine has an access recovery time (from negation of CF chip select to assertion of the next CF chip select) of 500nS. I was concerned about that and lengthened it to 1.5uS, but it makes no difference.

The CPLD I used only have 128 flip flops, too small to contain a boot ROM. That's why I needed an external memory, like CF, to provide the boot code. I looked up Amstrad PCW boot sequence and it sounded like what mikemac is suggesting--copying 256 bytes of boot strap code from printer controller ROM into RAM and executing it, which then load & execute the program from drive A. I may have sufficient logics in the CPLD to do that, but the first step is to initialize the CF correctly so it can supply the necessary data to the CPU.

Page 47 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sat, 22 Jul 2017 17:57:56 GMT View Forum Message <> Reply to Message Once you can get the CF card to work with your CPLD, what I was proposing is you do essentially the same thing as you're currently do with the SPI flash. Except get rid of the serializer/deserializer [CF is already parallel] and change the state machine count from 32K to 128 or whatever the block size of a CF drive is.

So your CPLD state machine copies the first CF sector to address 0x0, releases the 68000 from reset, the 68000 then executes that first sector's code which then loads the "real" image from the CF. This 2 stage boot loader approach is pretty common.

If you haven't looked yet, I'd recommend you check out https://en.wikipedia.org/wiki/Master_Boot_Record#Sector_layout. So your CPLD loads the first stage boot loader out of the "Bootstrap code area", the first stage boot loader looks in the partition table for a either "bootable" partition or one of a particular type, copies the 2nd stage from that partition, and jumps to it. That 2nd stage is either the image you want to run or it could be a 2nd stage boot loader that looks at the other partitions and gives the user a boot menu to chose from based upon those other partitions contain.

I know it sounds complicated at first glance. But it's actually just a bunch of simple steps. The only one you're really concerned about right now is getting that first sector off the CF and into RAM at 0x0. Then and only then do you make the contents of that first sector a little smarter so it can get the next stage from anyplace on the CF.

I probably haven't explained this very well.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 22 Jul 2017 19:13:53 GMT View Forum Message <> Reply to Message I understand you perfectly. I didn't know anything about file structures, partitions, boot records and master boot record until a few months ago when I studied them closely so my memory is still fresh. That particular wiki page is bookmarked and referred to frequently.

I may continue to boot out of serial EEPROM for the near-term designs because the serial EEPROM is tightly specified whereas CF is a standard so that different brands of CF may behave differently and I wouldn't know my state machine is working until I've tried several different brands of CF. In fact, I was able to boot off a CF, but I don't understand why it worked. And then a small hardware adjustment caused it not to work, so clearly I don't have a good understanding of the CF protocol at this point.

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sat, 22 Jul 2017 19:36:13 GMT

Page 48 of 71 ---- Generated from RetroBrew Computers Forum View Forum Message <> Reply to Message You can always put your "boot loader" in the SPI and have it load the CPM/BASIC/ucLinux/Fuzix/... image off of the CF card.

I think I'll stick with SD cards for my future boards. Since I just accepted a new job yesterday, hopefully soon my toy fund will have some money in it so I can get back to building my own designs instead of just telling everyone else how to do theirs!

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 23 Jul 2017 10:50:38 GMT View Forum Message <> Reply to Message That's what I've done. I stored the CP/M image on the boot track, added a command to my monitor so I can invoke CP/M with a console command. It works really well. It sure is nice to have a decent size disk and fast data transfer.

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Tue, 25 Jul 2017 10:42:40 GMT View Forum Message <> Reply to Message The best place to look for the CF protocol are the later versions of the ATA specification. The original IDE spec is a bit light on information, in part because the original IDE is essentially a subset of ISA bus and also because CF was added later.

http://t13.org/Documents/UploadedDocuments/project/d1410r3b- ATA-ATAPI-6.pdf isn't a bad place to start as it's new enough to incorporate all the clarifications, merge the CF standard and the like but old enough not to dump serial ATA queued commands into the spec. It has the required voltage/current levels listed (which some cards are very fussy about) and all the timings for the different modes (PIO0 being the one you'd use at boot time). Fig 44 has all the timings for PIO0 (which includes the register writes and command issue if you are in that mode or not setting a mode)

A second problem you hit is that some ATA devices don't implement to the spec, they implement to windows. If you do what Windows does in the order Windows does it then it works, if you don't it doesn't.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 25 Jul 2017 17:15:02 GMT

Page 49 of 71 ---- Generated from RetroBrew Computers Forum View Forum Message <> Reply to Message Thanks for the more recent ATA datasheet. It certainly has more details than my older datasheet. The timing on figure 44 is same as my old datasheet, which is to be expected. The figures are clearer and easier to read, so it is a keeper. Thanks, Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 25 Jul 2017 21:34:42 GMT View Forum Message <> Reply to Message It is good to walk away from a problem for a while and come back with fresh eyes: The problem with CF initialization is due to a mix-up of the CF addresses. For the state machine to work its magic, it needs to control the CF address lines, so the existing hardwired A1-A3 are cut & re-wired to the CPLD. Well, I made a mistake in wiring the 3 address lines such that A2 & A3 are swapped. This explained fully the weird behaviors of the CF during its initialization. With A2 & A3 fixed, the CF initialized correctly and the bootstrap code loaded the monitor and monitor executed as expected. So now I can throw away the serial EEPROM and boot out of CF--well, not quite, success with one brand of CF does not mean it will work with all brands of CF. I plan to have two version of the 68000 boards, one boots out of serial EEPROM while that other boots out of CF. My preference is booting out of a CF because the state machine is quite simple: 2 cascaded 3-bit counters, 3 registered outputs, and 3 state variables for a total of 12 flip flops, compare that to well over 50 flip flops for the serial EEPROM loader. The CPLD is only 66% utilized whereas the serial EEPROM booting CPLD is 90+% utilized. I need the spare capacity in CPLD to add more features, but at 50 cents per board or $5 per run, it is hardly worth the effort to decide which design to proceed--just do both of them.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 19 Oct 2017 15:40:21 GMT View Forum Message <> Reply to Message Rev 1 of Tiny68k. Correct the error of 68000 footprint and add another serial EEPROM so I can reprogram the boot software without removing the part to program it on an external programmer.

File Attachments 1) DSC_30981019.jpg, downloaded 757 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by mikemac on Sat, 21 Oct 2017 23:51:06 GMT View Forum Message <> Reply to Message Pretty!!

Page 50 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 24 Oct 2017 14:48:20 GMT View Forum Message <> Reply to Message Thanks! It works quite well as well. I've started a board wiki page under the "boards/sbc" directory: https://www.retrobrewcomputers.org/doku.php?id=boards:sbc:ti ny68k There are a number of things I want to check out: - Software to program the 2nd serial EEPROM in-situ and boot from the 2nd serial EEPROM - Auto boot to CP/M68K, perhaps I can boot directly to CP/M when boot out of the 2nd serial EEPROM - All my tests were done at 8MHz system clock, I want to move up to 12MHz - Build a CF disk from scratch & document it. I've tried so many different things, I forgot how to do it from the beginning!

Are there interests in this board? I've already built up 2 boards and both are working well. I want to build the third one with sockets for 68000 & 68681 so I can do speed test. The remaining 7 boards are available for anyone interested. The bare board is $1.50 each, I can assemble & program the Altera EPM7128 and program the 24C256 and sell the partial assembly for $8, or I can sell the assembled & tested board for $25 (as shown in the picture but without the CF disk). The socketed parts are SIMM module, 68000, 68681, oscillator, and 24C256 so if you already have these parts, let me know and I'll take them off the $25.

Subject: Re: Plasmo's 68k pathfinder projects Posted by ab0tj on Tue, 24 Oct 2017 14:58:10 GMT View Forum Message <> Reply to Message I'd be interested in the $25 option. Even in kit form (with the Altera chip soldered on) to save you some time

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Tue, 24 Oct 2017 16:50:13 GMT View Forum Message <> Reply to Message I'd be interested too, with reservations about programming and soldering the Altera chip. Would you sell a "bare board" with programmed Altera attached, and the serial PROM as well? How difficult is it to find a suitable DRAM SIMM to work with the board? Roger

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Tue, 24 Oct 2017 21:19:09 GMT View Forum Message <> Reply to Message Ah, good. So there are interests in Tiny68K. I should mention that shipping to US address is $4

Page 51 of 71 ---- Generated from RetroBrew Computers Forum for fully assembled board and $3 for partially assembled board. However I'm not quite ready to ship yet. I need to document the procedure for building CompactFlash disk with CP/M-68K and a simpler way to boot up CP/M. ab0tj wrote on Tue, 24 October 2017 08:58I'd be interested in the $25 option. Even in kit form (with the Altera chip soldered on) to save you some time ab0tj, I'll get tired of building boards eventually, but since this is a new design, I want to build and test more of them to make sure the design is sound. norwestrzh wrote on Tue, 24 October 2017 10:50I'd be interested too, with reservations about programming and soldering the Altera chip. Would you sell a "bare board" with programmed Altera attached, and the serial PROM as well? How difficult is it to find a suitable DRAM SIMM to work with the board? Roger Roger, That'll be the partial assembly for $8. I will also install all the surface mounted components especially the 20pF cap and 27K resistor associated with the 3.6864MHz crystal circuitry. They are 0603 components. Attached are the photos of the partial assembly, component side and solder side. The installed components are pointed with red arrows. I need to install the resistor R13 and header P2 because they are needed to program the Altera EPM7128. The Altera was successfully programmed and verified in this configuration. Not included in the picture is a 24C256 in 8-pin DIP package programmed with the boot software. Regarding DRAM SIMM, at 8MHz system clock I think any 16meg SIMM72 DRAM will work. Just now I find this item on eBay: https://www.ebay.com/itm/192328564152. It should work, but the price is a bit on the high side. I'll sell a working 16-meg SIMM72 for $4. (FYI, $3 for 68000P10, $2 for 68681, and $1 for oscillator)

File Attachments 1) partial assembly_comp.jpg, downloaded 316 times 2) partial assembly_solder.jpg, downloaded 297 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by ab0tj on Tue, 24 Oct 2017 21:26:33 GMT View Forum Message <> Reply to Message plasmo wrote on Tue, 24 October 2017 15:19I'll get tired of building boards eventually, but since this is a new design, I want to build and test more of them to make sure the design is sound. Fair enough. That works too.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 25 Oct 2017 00:48:57 GMT View Forum Message <> Reply to Message

Page 52 of 71 ---- Generated from RetroBrew Computers Forum ab0tj, I took a nap and woke up realizing perhaps I missed the point of your request, that you prefer a kit of unassembled parts instead of an assembled/tested board. That was the whole point of Heathkit which I dearly loved growing up. So I'll offer two types of kits: kit1-- $18 for bare board and all the parts needed for a Tiny68K, only part pre-programmed is the serial flash, 24C256. kit2-- $20 for a partial assembled board like the pictures in my reply to norwestrzh (message #3650) plus the remaining parts to complete the project. Altera 7128 will be programmed so would the 24C256 serial flash. Shipping to US address is $4 for both kits. I should be ready in a week or so.

Subject: Re: Plasmo's 68k pathfinder projects Posted by wsm on Wed, 25 Oct 2017 15:09:25 GMT View Forum Message <> Reply to Message Quote:I need to install the resistor R13 and header P2 because they are needed to program the Altera EPM7128. I think you'll find that header P2 is optional and not really required since it is only used once or perhaps a few more times. I've programmed many dozens of CPLD and PIC-based boards without soldering headers and have never had a programming failure. The header is put into the socket of the programmer or cable and then inserted into the board without solder. For the few seconds that the board is powered on during programming, slight pressure is applied at the top of the header on it's long side to twist it in the holes. Think about twisting the pins so they touch the top of the hole on one side and the bottom of the hole on the other side. Works 100% of the time for me ... so far.

Subject: Re: Plasmo's 68k pathfinder projects Posted by ab0tj on Wed, 25 Oct 2017 15:14:10 GMT View Forum Message <> Reply to Message plasmo wrote on Tue, 24 October 2017 18:48ab0tj, I took a nap and woke up realizing perhaps I missed the point of your request, that you prefer a kit of unassembled parts instead of an assembled/tested board. That was the whole point of Heathkit which I dearly loved growing up. So I'll offer two types of kits: I wasn't even trying to be cheap - I just enjoy soldering so I figured it would save you some time. I'd be in for the partially assembled kit as the CPLD is the part I wasn't looking forward to soldering...

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 26 Oct 2017 03:03:23 GMT View Forum Message <> Reply to Message

Page 53 of 71 ---- Generated from RetroBrew Computers Forum ab0tj, I understand the joy of board assembly. Heathkit's appeal wasn't low cost, but the pleasure of putting things together from scratch and gaining greater understanding of how they work. I'll put you down for one Kit#2.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 26 Oct 2017 03:05:26 GMT View Forum Message <> Reply to Message wsm wrote on Wed, 25 October 2017 09:09Quote:I need to install the resistor R13 and header P2 because they are needed to program the Altera EPM7128. I think you'll find that header P2 is optional and not really required since it is only used once or perhaps a few more times. I've programmed many dozens of CPLD and PIC-based boards without soldering headers and have never had a programming failure. The header is put into the socket of the programmer or cable and then inserted into the board without solder. For the few seconds that the board is powered on during programming, slight pressure is applied at the top of the header on it's long side to twist it in the holes. Think about twisting the pins so they touch the top of the hole on one side and the bottom of the hole on the other side. Works 100% of the time for me ... so far.

Thanks for the suggestion, I'll give that a try. There are advantages in not soldering down the programming header because a board with just a few low-profile surface mount components can be shipped in an antistatic bag inside a padded envelope cheaply. I want to avoid soldering the header as well and my idea was building a fixture with long wire-wrap pins and bent them outward slightly so the spring tension and the sharp edges of the WW pins would make good contacts with the plated thru holes. I also have ordered some spring-loaded pogo test pins in case the previous idea doesn't work. All that may not be necessary, keep it simple stupid is the best way.

Subject: Re: Plasmo's 68k pathfinder projects Posted by wsm on Thu, 26 Oct 2017 04:35:36 GMT View Forum Message <> Reply to Message Quote: ... keep it simple stupid is the best way. I'll openly admit that it was a stupidly simple idea that led me to try this technique. I have a board that I regularly build in batches of 10 and realized the 1x6 header was not required after shipment. I was ready to build a pogo fixture but realized I had to order some parts and it would take time to build. The light bulb went on for the KISS method and I decided to give it a try. Since then I've never installed the headers on those boards or several other designs which use a 2x5 header, including their prototypes which were reprogrammed quite a few times. So far I've had zero connection problems while programming any of them.

Subject: Re: Plasmo's 68k pathfinder projects

Page 54 of 71 ---- Generated from RetroBrew Computers Forum Posted by norwestrzh on Thu, 26 Oct 2017 05:13:00 GMT View Forum Message <> Reply to Message OK, Bill, Put me in for the $8 partial assembly. I have plenty of PDIP 68000's and PDIP 68681's (and oscillators), but I might need to buy one of your 16MB SIMMS. Have to look in the "junk box" to see if I have any here. Thanks. Roger

Subject: Re: Plasmo's 68k pathfinder projects Posted by computerdoc on Thu, 26 Oct 2017 13:45:35 GMT View Forum Message <> Reply to Message Hi Bill, I would love to get the Kit #2 with the SMDs soldered and all the other parts included. I am in the middle of saving up for a major repair and refit of my main TOWER PC computer. Will you still be selling these kits in January 2018? I definitely will be getting 1 should they still be available then.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 26 Oct 2017 14:41:57 GMT View Forum Message <> Reply to Message norwestrzh wrote on Wed, 25 October 2017 23:13OK, Bill, Put me in for the $8 partial assembly. I have plenty of PDIP 68000's and PDIP 68681's (and oscillators), but I might need to buy one of your 16MB SIMMS. Have to look in the "junk box" to see if I have any here. Thanks. Roger

Roger, I'll put you down for a partial assembly. I'll PM you when I'm ready to ship and you can tell me whether you want the SIMM included (or any parts you may need). computerdoc wrote on Thu, 26 October 2017 07:45Hi Bill, I would love to get the Kit #2 with the SMDs soldered and all the other parts included. I am in the middle of saving up for a major repair and refit of my main TOWER PC computer. Will you still be selling these kits in January 2018? I definitely will be getting 1 should they still be available then. Kip, I have plenty of parts, the only thing that may run out is the pc board. The board can be reordered and is cheap ($4.90 for 10pcs plus shipping--shipping is the expensive part). I put all my design files on the wiki page so anyone can reorder boards and put boards together.

Subject: Re: Plasmo's 68k pathfinder projects Posted by rwiker on Thu, 26 Oct 2017 17:43:24 GMT

Page 55 of 71 ---- Generated from RetroBrew Computers Forum View Forum Message <> Reply to Message I'd like Kit #2, if you still have any PCBs left. I'm in Norway, so shipping would obviously be more expensive.

It's intriguing that this little board is significantly more powerful than the Sage II (or IV) from 1983: faster processor, significantly more memory and faster and higher capacity mass storage.

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Thu, 26 Oct 2017 18:46:41 GMT View Forum Message <> Reply to Message And would be interested in the built one to the UK as well.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Fri, 27 Oct 2017 00:41:43 GMT View Forum Message <> Reply to Message rwiker wrote on Thu, 26 October 2017 11:43I'd like Kit #2, if you still have any PCBs left. I'm in Norway, so shipping would obviously be more expensive.

It's intriguing that this little board is significantly more powerful than the Sage II (or IV) from 1983: faster processor, significantly more memory and faster and higher capacity mass storage. rwiker, I set aside a Kit #2 for you. I sent a couple packages to Europe recently. The USPS First Class International seems the cheapest shipping option. It is $22.50 for up to 4 pounds. Never used Sage computer before. Read it up on wikipedia, it seems quite capable and can run a number of different operating systems, including CP/M68K. I wonder any of the other operating system are still available? $3600 for singl-floppy entry-level configuration! Such is the deflationary force of Moore's Law. etchedpixels wrote on Thu, 26 October 2017 12:46And would be interested in the built one to the UK as well. etchedpixels, OK, a fully assembled/tested Tiny68K for you. Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by rwiker on Fri, 27 Oct 2017 04:57:51 GMT

Page 56 of 71 ---- Generated from RetroBrew Computers Forum View Forum Message <> Reply to Message Great - send me a PM with the payment details when you're ready to send it out.

There were quite a few operating systems available for the Sage, with UCSD p-system probably being the most common. My Sage IV (which I traded away in 1999 or so) had UCSD and something called Mirage installed when I bought it in 1989.

Bitsavers have some software for the Sage: http://bitsavers.trailing-edge.com/bits/Sage_and_Stride/

Subject: Re: Plasmo's 68k pathfinder projects Posted by computerdoc on Fri, 27 Oct 2017 06:27:19 GMT View Forum Message <> Reply to Message Hi Bill, The only thing that will mess with me on the soldering side of things are the SMDs. I have never soldered those before. I wouldn't mind redesigning the board in Eagle with all through-hole parts if everything is available in that style case. 20MHZ 68000s in PLCC form are available. Plenty of margin for speed increases as time goes on. I like using Eagle. I much prefer it over Kicad. I never could quite get the hang of Kicad when I first found the then called N8VEM Retrobrew computer site. Eagle seems to fit my mind's thought processes quite well. What form are your Tiny 68K boards' design files draw up in? May I help in this or any way? I am working on a Motorola 8-bit Multi-processor SBC board right now anyway. Sort of like a Kitchen Sink type of board as a former Motorola Chip Design Engineer close friend of mine calls it. Please let me know. I am very interested in all your 68K board designs and have been following this topic ever since you started it. Tiny but vary capable 68Ks are of great interest to me. Thanks for starting this thread! I really appreciate you efforts. Thanks a bunch!

Subject: Re: Plasmo's 68k pathfinder projects Posted by computerdoc on Fri, 27 Oct 2017 11:34:39 GMT View Forum Message <> Reply to Message Hi Bill, Please put me on the list for Kit #1 All SMDs are soldered and Programmed. I should have the rest of the parts on hand or can get them when I can. Thanks a bunch. There is a PLCC version of the EPM7128 that I'm thinking seriously of entering into Eagle so I can see what I can do on the Through hole version of your Tiny68K as an exercise and teaching aid to me. When I figure this board out, I'm let you see a pdf of it. I'd like to see what you think.

Page 57 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by yoda on Fri, 27 Oct 2017 16:15:24 GMT View Forum Message <> Reply to Message I haven't seen the design files that Bill has but the PLCC version does not have as many I/O pins which will probably not allow you to convert to thru hole. I ran in the same situation a while back and have standardized on the 100 pin device - not too hard to solder.

Subject: Re: Plasmo's 68k pathfinder projects Posted by zamp on Sat, 28 Oct 2017 01:54:23 GMT View Forum Message <> Reply to Message Bill -- This looks like a fun system. If you still have boards, one Kit#2 with chips programmed and SMT devices soldered for me to NY State, USA. Thanks!

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 28 Oct 2017 04:27:28 GMT View Forum Message <> Reply to Message computerdoc wrote on Fri, 27 October 2017 05:34Hi Bill, Please put me on the list for Kit #1 All SMDs are soldered and Programmed. I should have the rest of the parts on hand or can get them when I can. Thanks a bunch. There is a PLCC version of the EPM7128 that I'm thinking seriously of entering into Eagle so I can see what I can do on the Through hole version of your Tiny68K as an exercise and teaching aid to me. When I figure this board out, I'm let you see a pdf of it. I'd like to see what you think. Kip, OK reserve a Kit#2 for you. Please feel free to redesign/modify all my Tinyxxx boards. I designed all my boards on a 20-year old software called WinDraft & WinBoard by IVEX. IVEX is no longer in business, so the designs need to be recreated on your tools. As yoda correctly pointed out, the PLCC version of the EPM7128 only has 84 pins instead of the 100-pin EPM7128SQC100. In Tiny68K the 100-pin EPM7128 only has 2 spare pins, so the 84-pin PLCC will not work. I did used a PLCC84 EPM7128 in the Tiny030 design, but it requires external DRAM address mux circuitry. IMO, a 100-pin EPM7128 would've been much better solution and simplify the design considerably. Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sat, 28 Oct 2017 05:09:25 GMT View Forum Message <> Reply to Message zamp wrote on Fri, 27 October 2017 19:54Bill -- This looks like a fun system. If you still have boards, one Kit#2 with chips programmed and SMT devices soldered for me to NY State, USA. Thanks!

Page 58 of 71 ---- Generated from RetroBrew Computers Forum vamp, OK, reserve a Kit#2 for you. That is the last pc board I have on hand.

------

The responses are greater than I expected. Here are the latest status of my works on Tiny68K: * I encountered a curious bug on "pip" command: when I tried to concatenate multiple files using the command format: pip file1.txt=file2.txt,file3.txt I get the error message:

Exception $03 at user address $0001B1BA. Aborted. pip works fine otherwise. This error occurs in simulation as well, so it may be a bug in pip command or corrupted distribution disk. * Beside the strange bug in "pip", most software work fine except gkermit. It just hung. * Creating a new CF disk is kludgy. I'm not smart enough to have a general solution that reads CP/M68K image (created with cpmtools) on FAT directory and creates a CP/M CF disk. So my solution right now is using cpmtools to create a CP/M68k image, converting it to srecord and serially loading into the RAMdrive location on Tiny68K. With the disk image loaded and CP/M running, I can then copy the files in the RAMdrive into CF. This works well, except loading 2 megabyte disk image into RAM at 38.4K baud takes about 30 minutes. Only need to do this once to create a new CF disk, but it is slow nevertheless. * Still working on an utility that will copy first 32K byte of memory into the 2nd serial flash. With this utility a new boot serial flash can be created thus allowing boot software update without the need of an external programmer. * I did all my tests with SanDisk brand of CF which work well. I do have one Transcend brand of CF that read/write FAT16 files correctly on PC but does not read/write CP/M68k files correctly on Tiny68K. I'm concerned that Tiny68K hardware/software may only work with a subset of CF. I'm ordering a batch of Transcend CF and see if I can figure out what the problems may be. Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by etchedpixels on Sun, 29 Oct 2017 14:02:51 GMT View Forum Message <> Reply to Message In Linux at least if your CF card is just a raw CP/M image from the start of the card with nothing strange going on you can do dd if=image.cpm of=/dev/sdwhatever

(just don't get the wrong device!

For Windows I believe rawrite32 will do the same job (it's intended for making things like BSD or Linux boot images)

If you are borrowing a partition type for CP/M the way Will did for socz80 then you need to do

Page 59 of 71 ---- Generated from RetroBrew Computers Forum slightly more work.

Subject: Re: Plasmo's 68k pathfinder projects Posted by computerdoc on Mon, 30 Oct 2017 04:42:43 GMT View Forum Message <> Reply to Message Hi Bill, Thank you for reserving me a Kit #2. I appreciate it very much. I was very excited to see a PLCC EPM7128, but I shortly figured out that it was not the same pin number nor I/O pin count of the 100 pin device you used in Tiny68K. Oh Shucks. Thanks for all who pointed that out. I have not been online lately since I was attacked by Fire Ants inside the front door of our house. I found out cars aren't the only things with panic buttons! OUCH! OUCH! OUCH! OUCH! OUCH! I've seen the Doc and I'm doing much better now as long as I'm on my medicine. Bill, Thanks for giving me the go ahead to reproduce your designs. I appreciate that very much. Feel free to send me all your designs when you have a few moments and I will enter them as soon as I can. The only part giving me trouble so far on Tiny68K is the EPM7128. Your pdf of the schematic has NO PIN NUMBERS anywhere. Would it be possible to put pin numbers on all the parts or at least the CPLD? In an effort to help with this, attached is an unfinished pdf of my Eagle Schematic for Tiny68K that I have created so far. The board lay out is of course a work in progress as well. You will notice a slight change. The PLCC version of the 68000 goes all the way up to 20MHZ, so I took the liberty of replacing the DIP version of the 68000. Of course, this is your design so I will do as you ask. Remember folks, this is an UNFINISHED Tiny68K board being transferred to Eagle so Do NOT USE, yet! Bill, Please let me know if I am anywhere near the right track as it were with this circuit board. When I saw your message, I felt like I needed to respond even though I'm not finished yet. Thanks for everyone's efforts and assistance. Take care my friends. File Attachments 1) Tiny68K brd.pdf, downloaded 168 times 2) Tiny68K sch.pdf, downloaded 187 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Mon, 30 Oct 2017 06:06:30 GMT View Forum Message <> Reply to Message etchedpixels wrote on Sun, 29 October 2017 08:02In Linux at least if your CF card is just a raw CP/M image from the start of the card with nothing strange going on you can do dd if=image.cpm of=/dev/sdwhatever

(just don't get the wrong device!

For Windows I believe rawrite32 will do the same job (it's intended for making things like BSD or Linux boot images)

Page 60 of 71 ---- Generated from RetroBrew Computers Forum If you are borrowing a partition type for CP/M the way Will did for socz80 then you need to do slightly more work.

I don't have a Linux box, so I downloaded rawrite32. My lab PC has Windows Vista, and I have problem with rawrite32 writing image to CF on my lab PC. I try it again on my other PC tomorrow. Users with access to Linux box or Windows that can write CP/M image directly to CF will have a much easier time getting the a working CF disk running on the Tiny68K.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Mon, 30 Oct 2017 06:10:49 GMT View Forum Message <> Reply to Message computerdoc wrote on Sun, 29 October 2017 22:42Hi Bill, Thank you for reserving me a Kit #2. I appreciate it very much. I was very excited to see a PLCC EPM7128, but I shortly figured out that it was not the same pin number nor I/O pin count of the 100 pin device you used in Tiny68K. Oh Shucks. Thanks for all who pointed that out. I have not been online lately since I was attacked by Fire Ants inside the front door of our house. I found out cars aren't the only things with panic buttons! OUCH! OUCH! OUCH! OUCH! OUCH! I've seen the Doc and I'm doing much better now as long as I'm on my medicine. Bill, Thanks for giving me the go ahead to reproduce your designs. I appreciate that very much. Feel free to send me all your designs when you have a few moments and I will enter them as soon as I can. The only part giving me trouble so far on Tiny68K is the EPM7128. Your pdf of the schematic has NO PIN NUMBERS anywhere. Would it be possible to put pin numbers on all the parts or at least the CPLD? In an effort to help with this, attached is an unfinished pdf of my Eagle Schematic for Tiny68K that I have created so far. The board lay out is of course a work in progress as well. You will notice a slight change. The PLCC version of the 68000 goes all the way up to 20MHZ, so I took the liberty of replacing the DIP version of the 68000. Of course, this is your design so I will do as you ask. Remember folks, this is an UNFINISHED Tiny68K board being transferred to Eagle so Do NOT USE, yet! Bill, Please let me know if I am anywhere near the right track as it were with this circuit board. When I saw your message, I felt like I needed to respond even though I'm not finished yet. Thanks for everyone's efforts and assistance. Take care my friends.

Kip, I'll take a close look at the schematic and board layout tomorrow. My initial reactions are: * PLCC 68000 is a good idea, it saves space and there are greater speed options. * You should also consider a PLCC 68681. I saw one on eBay $12.16 + $1.68 shipping for 10pcs SCN68681 in PLCC44. * Half size oscillators are great. * You'll have plenty of room for something else, like a video controller, floppy disk controller, etc. This is a base design for future experiments.

Subject: Re: Plasmo's 68k pathfinder projects

Page 61 of 71 ---- Generated from RetroBrew Computers Forum Posted by rhkoolstar on Mon, 30 Oct 2017 10:56:55 GMT View Forum Message <> Reply to Message Hi Bill,

You might want to consider using a USB Linux distro. Just plug in your Windows box and boot. Does not change your windows setup and you can use dd all you like.

Rienk

Subject: Re: Plasmo's 68k pathfinder projects Posted by computerdoc on Tue, 31 Oct 2017 08:12:23 GMT View Forum Message <> Reply to Message Hi Bill, I would love to use the PLCC version of the 68681. I have only found an Advance Information datasheet for the 68681. Although it has a PLCC version of the MC68681FN, I would feel better about creating an Eagle part with the finalized Datasheet. Do you have a finalized MC68681FN Datasheet? Attached is all I can find so far. I've tried several sites. If you or anyone can find a better datasheet, I would be most grateful. File Attachments 1) MC68681P Dual Asynchrnous Receiver Transmitter datasheet.pdf, downloaded 230 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by norwestrzh on Tue, 31 Oct 2017 17:24:39 GMT View Forum Message <> Reply to Message try this File Attachments 1) SCN68681_2.pdf, downloaded 248 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Sun, 05 Nov 2017 03:39:21 GMT View Forum Message <> Reply to Message I have created a separate topic dedicated to the Tiny68K: https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=222&start=0&

I'm ready to ship assembled boards and kits! I'll PM interested members with additional info.

Page 62 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by kkeeley on Wed, 07 Mar 2018 01:27:20 GMT View Forum Message <> Reply to Message Hi Plasmo,

Sorry if this has already been answered somewhere else. I've been looking at your Tiny030 and I'm very interested in the design, looking over the schematic I have a question about one of the parts you have used and what it is exactly. What is the IC labeled U10 DUAL-OSC? what does it do?

Thanks Ken

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 07 Mar 2018 01:43:46 GMT View Forum Message <> Reply to Message It is ECS-300C, oscillator by ECS Inc that has a primary output and a programmable secondary output. They are hard to find and only reason I used it was because I have them. The reason the schematic looks that way is to give me the flexibility of using one or both oscillators (ECS-300C is an 8-pin device that can sit under the full size oscillator). I messed up the crystal oscillator for MC68681 and did use ECS300 to generate the 3.6864MHz baud rate clock. A redesigned Tiny030 will not have the dual oscillator.

Subject: Re: Plasmo's 68k pathfinder projects Posted by kkeeley on Wed, 07 Mar 2018 02:14:58 GMT View Forum Message <> Reply to Message Thanks, it makes sense now.

Subject: Re: Plasmo's 68k pathfinder projects Posted by Andrew B on Wed, 07 Mar 2018 04:45:43 GMT View Forum Message <> Reply to Message Do you have an official ECS programmer or is there a DIY way to program the ECS programmable oscillators?

I've often thought it would be nice to be able to keep a few blank programmable oscillators in my drawer and program them as needed.

Page 63 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 07 Mar 2018 05:15:22 GMT View Forum Message <> Reply to Message I don't have the ECS Blank Programmable oscillator. Mine has a fixed primary frequency; the secondary frequency is derived from the primary with a divided by N counter. The N is programmable by 3 jumpers select. Attached is the data sheet. File Attachments 1) dual_output_osc_ecs300c.pdf, downloaded 142 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by kkeeley on Wed, 11 Apr 2018 00:31:54 GMT View Forum Message <> Reply to Message Hi Again,

This may have already been asked, If so, sorry.

I'm designing a 68030 system that has a lot in common with this as a starting point an I'd like to know if it's possible to change the EPM7128 for XC95144XL, I know they have different pin outs and packages but would the XC95144XL work from an electrical point of view? If I'm reading the datasheets correctly the EPM7128 is all 5 volt where as the XC95144XL is a 3.3 volt device that is 5 volt tolerant, it's VOH is 2.4 which is TTL compatible but would the likes of the 68030, 68882, Flash and SRAM accept that as a logic high or would it require level shifters to work correctly?

Thanks again, Ken

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 11 Apr 2018 02:02:14 GMT View Forum Message <> Reply to Message I have not worked with Xilinx products at all so I don't know its specific I/O characteristics. MC68030/68882 operate at TTL levels so Voh of 2.4V should be sufficient to drive 68030's inputs to logic 1. If you have on-board regulator to convert 5V to 3.3V, I would adjust the supply voltage toward the high end of the spec, such as 3.5V, so the outputs levels are correspondingly higher. Part also runs faster at higher voltage.

There are so many different Flash & SRAM vendors it is hard to generalize.

I'm thinking about redesigning Tiny030 as well but that won't happen until end of this year. I still want to maintain the 2-layer PCB in 10cm * 10cm format but adding CF interface and bigger DRAM. Because of 030's dynamic bus sizing capability, it is reasonable to use one 8-bit wide boot flash instead of the serial EEPROM to save board space. The logic complexity of traditional boot flash interface is significantly lower than that of serial flash loader of Tiny68K. You may not

Page 64 of 71 ---- Generated from RetroBrew Computers Forum need as complex of CPLD as EPM7128 equivalent. Sounds like you plan to use SRAM instead of DRAM? That'll reduce the logic complexity further.

Subject: Re: Plasmo's 68k pathfinder projects Posted by kkeeley on Wed, 11 Apr 2018 03:03:31 GMT View Forum Message <> Reply to Message Hi Plasmo,

I look forward to see the changes you make to the Tiny030.

The board I'm currently designing will be the one of a few in a system designed around a vme backplane, although not pinout compatible. The boards will be either 10cm * 16cm or 10cm * 22cm, This one will be the CPU card, and I'm planning for it to only contain the CPU, FPU, single FLASH, Single SRAM and CPLD to tie it all together and a few other required bits like clock and reset. The main memory subsystem will be on a separate card and will most likely be SDRAM using a CPLD/FPGA for the memory controller, Looking to go upto 128Mb or 256Mb of RAM.

Subject: Re: Plasmo's 68k pathfinder projects Posted by wsm on Wed, 11 Apr 2018 15:32:44 GMT View Forum Message <> Reply to Message Quote:... I'd like to know if it's possible to change the EPM7128 for XC95144XL, I know they have different pin outs and packages but would the XC95144XL work from an electrical point of view? I think the short answer is that the XC95144XL should work just fine at 3.3V. I've used Xilinx's XPLA3 family which is also 5V tolerant on several different boards that have 5V chips. The single Voh datasheet number is somewhat misleading since it is very dependant on the load that you're driving. For example, the typical I/V curve for the XPLA3 family's Voh is over 3V at 10ma and 2.4V at ~40ma.

If you want to use Xilinx CPLDs, then besides the XC95144XL you might want to also look at the XCR3128XL. They're not quite as common so perhaps $1 more from places like UTsource. Instead of 54V18 function blocks they're 40V16 but the BIG difference is in lower power consumption. High speed counters at 33MHz would be about 15ma for the XCR3128XL vs. 83ma for the XC95144XL and about 200ma for the EPM7128. There is also a drastic difference in Icc at low frequencies and the XPLA3 is measured in uA.

If you want to use ABEL versus VHDL or Verilog for Xilinx CPLDs, you'll have to use a downlevel version of ISE (V10.1). I find it to be bloatware and sometimes have to fight with the optimizing options but it does work.

If you need faster CPLD's, you might want to also look at Lattice's LC4128V which can be as low as 2.7ns.

Page 65 of 71 ---- Generated from RetroBrew Computers Forum Subject: Re: Plasmo's 68k pathfinder projects Posted by kkeeley on Wed, 11 Apr 2018 21:58:25 GMT View Forum Message <> Reply to Message Thanks for the suggestion on the XPLA3 family and Lattice ispMACH 4000V family, I'll have a look at these as well.

My main concern to start with was use a 3.3V CPLDs in a 5V environment, but it appears you have had success with this without the need for level shifters. So now I can focus more on what logic I require in the CPLD, this will then determine the final device size required, I'm hoping to keep to something that can be hand soldered, doesn't seam to be to many options in PLCC, but TQFP seams to offer a few more options, not too sure how difficult it will be to solder 0.5mm TQFP by hand but I've seen that it can be done. Looking at the pricing they all seam to be about the same, give or take a few bucks. The real difference is the tools/software required to use them, for this so far I'm leaning towards the Xilinx's or Lattice devices at the moment.

Subject: Re: Plasmo's 68k pathfinder projects Posted by wsm on Thu, 12 Apr 2018 00:49:03 GMT View Forum Message <> Reply to Message The XCR3032/64XL and XC9536/72XL were available in 44 pin PLCCs but these tend to be very I/O pin limited (36 & 34 respectively).

I've been hand soldering the 0.5mm 100VQFP, 144TQFP & 208PQFP packages without much of a problem. The step down to 0.4mm is about my limit and I find them MUCH harder. I use an old Weller WTCPN iron with PTS7 tips (0.4mm) plus .015" / .37mm Multicore solder and LOTS of flux (Kester 952D6 or 951 in pens). Be sure to very carefully position the part before soldering and only use a LITTLE bit of solder. Originally I used to create a few bridges on 0.5mm parts that needed to be wicked but now I can usually do one of these without any bridges.

I found ispLEVER to be MUCH faster than ISE but the version I used had a few nasty bugs that might have been fixed by now. If using ABEL, there are slight differences in how they interpret ranged variables which may require some coding changes. At the end of the day, they both can work so I select the device as my main criteria. I haven't actually used Altera's tools so I can't comment on them.

Subject: Re: Plasmo's 68k pathfinder projects Posted by kkeeley on Thu, 12 Apr 2018 01:33:55 GMT View Forum Message <> Reply to Message Thanks

This is all very useful information, do you know if ispLEVER supports the ICE40 fpga's or would I need IceCube for them? I've seen a few designs for VGA and SDR Memory controllers that use the ICE40 fpga's. I'd like to reduce the number of tools to learn/use to a minimum. I think that Xilinx supports the XC9500XL, XPLA3, Spartan 3E and Spartan 6 families all in the one version of

Page 66 of 71 ---- Generated from RetroBrew Computers Forum ISE (14.7 I think).

Subject: Re: Plasmo's 68k pathfinder projects Posted by wsm on Thu, 12 Apr 2018 02:06:05 GMT View Forum Message <> Reply to Message ispLEVER supports the ispMACH devices but NOT the ICE40 ... for that you'd need IceCube.

ISE does support the multiple families *BUT* if you want to use ABEL rather than VHDL or Verilog you'll need a downlevel version.

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 12 Apr 2018 02:31:55 GMT View Forum Message <> Reply to Message Good discussion of Xilinx CPLD product lines. When Xilinx acquired Philips CoolRunner product lines, they had really strengthen their holds on the low-power CPLD. Altera supposed to have very user friendly tools, their schematic capture program was way ahead of its time, but these are 15-20 years old opinions. I don't know what improvements Altera (Intel) and Xilinx have made since. Since the products under discussion are 20+ years old, I suppose the capabilities of the tools at that time is still applicable today. Ultimately these tools have their strength & weakness and it is what you are used to that's important. I've used Altera since their early days with EP300/600/900 (mid 1980's) so it is unlikely I'll change tools.

I think it is worth the effort to learn how to solder SMT down to 0.5mm. It gives you much greater design choices and you can do so much with the low cost 10cm * 10cm pc board if you've mastered the SMT soldering process. I'm retired, so I'm not a spring chicken anymore, but with the help of stereo inspection microscope, fine soldering tip, 0.010 multi-core solder, and lots of flux, I still can do 0.5mm pitch without much of a mess. EPM7128SQC100 at 0.65mm pitch is downright easy.

Subject: Re: Plasmo's 68k pathfinder projects Posted by wsm on Thu, 12 Apr 2018 16:42:41 GMT View Forum Message <> Reply to Message Ken: I forgot to mention another possible CPLD that is available in 84-pin PLCC form and can run on 5V. Namely the Atmel (Microchip) ATF1508AS. They have quite a high Idd requirement and I haven't actually used them. Some of the newer S100computers boards use them.

Plasmo: I agree that we tend to get used to various tools and figure out their ideosyncrasies then tend to stick with them. I started using CPLDs with the Philips XPLA3 series but have looked at using several different families. Once I started using various 3.3V devices, the CoolRunner-II family added some useful features and a lower cost. I'm just starting to play with FPGAs but I still

Page 67 of 71 ---- Generated from RetroBrew Computers Forum like the simple deterministic nature of CPLDs. However, features like dual-ported FIFOs plus LOTS of logic have swayed me to start playing with FPGAs.

Likewise, I've also got grey hair and still use a lot of OLD tools that I'm familiar with. That avoids one of the problems I foresee with the cloud and/or subscription model that a lot of tools are moving towards. For example, I still have PLD software and a programmer that is several decades old but I can still use it today to reproduce or update old designs, albeit on an older DOS machine that I saved.

Subject: Re: Plasmo's 68k pathfinder projects Posted by ale500 on Wed, 18 Apr 2018 19:28:56 GMT View Forum Message <> Reply to Message I've been reading the forums for a while and just recently decided to join.

I did some 68k projects in the past (68008 with TTL glue, 68EC020 with XC9536) and I picked another project just a few weeks ago: A 68SEC000 plus a Spartan6 (18 € board from aliexpress).

The 68SEC000 is great because it works with 3.3 V. I connected all processor pins to the FPGA (even MODE & A0... a waste) and did some minimum of glue in VHDL. I implemented an 80x25 Text driver with font and 4 K Video RAM that seems to work ok. The FPGA board has 32 MB SDRAM, bringing that up is my next step.

Here a couple of photos of the... setup. File Attachments 1) IMG_20180418_211929254_LLr.jpg, downloaded 305 times 2) IMG_20180418_211914793r.jpg, downloaded 301 times

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 19 Apr 2018 03:39:14 GMT View Forum Message <> Reply to Message Very nice! Too bad most retro CPU are 5V but 68SEC000 is one of the few exceptions. At 3.3V you have so much better selections of logic & memories. With a modern FPGA you can do just about anything you want. Add a SD card interface and you can have CP/M-68K. If you like the 68K family, there are 3.3V version of 68040 and 68060 is 3.3V. It should be fun to play with the high-end 68K processors.

Subject: Re: Plasmo's 68k pathfinder projects Posted by ale500 on Thu, 19 Apr 2018 07:55:47 GMT View Forum Message <> Reply to Message

Page 68 of 71 ---- Generated from RetroBrew Computers Forum That is also the plan, a SD card and a PS/2 keyboard.

The 68040 is also one of my targets, I did a board for it a few years ago, it has a 5 V-tolerant FPGA, a SpartanII (not E). The spartanII works, but I didn't got to test the 68040. There is something with the BUS frequency that is not clear. I think here is the right place to ask... I have a 25 MHz version, should I feed it with 50 or 25 MHz ?

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Thu, 19 Apr 2018 12:34:28 GMT View Forum Message <> Reply to Message 68040 needs both clock and 2xclock. The relationship of the two clocks are tight as well as the rise & fall time. The MC88915 was specifically made to support the 68040 clocks. I think the modern FPGA's PLL should be able to duplicate the timing requirements of the 68040 clocks. Don't know for sure, never designed 68040 with the modern FPGA. I did design a 68060 prototype closely coupled to an Altera Stratix FPGA when Altera introduced their Stratix product and Parallax produced a low-cost (I think it was $125, but that was low cost at the time) Stratix BGA-to-WW-headers board. It never went to production and that was my last 680x0 project.

Subject: Re: Plasmo's 68k pathfinder projects Posted by newjes250 on Sun, 31 May 2020 17:10:37 GMT View Forum Message <> Reply to Message To: Plasmo

I bought one of your Tiny68K assembled boards - and would like to use it as a TestBed to see if I can replace the 68000 with a plugin board having a 68020 processor. Would you know if such an upgrade in processors could be transparent and therefore compatible? I believe 3 things could be changed if needed: the CPLD, a selectable serial EEPROM, and the 68020 board. Why would someone want to do this? I have a 16Mhz 68000 system which is begging for a upgrade of this type, and the Tiny68K could be used to discover the areas where either timings or other issues might require changes. In fact I thought a TerribleFire PCB with its 68020 (which I have) could be modified to act as the plugin pcb.

Any thoughts from you would be most welcome, I have enjoyed very much using the Tiny68K. newjes250

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Mon, 01 Jun 2020 14:00:21 GMT View Forum Message <> Reply to Message

Page 69 of 71 ---- Generated from RetroBrew Computers Forum newjes250, I think it is possible to plug a 68020 carrier board into 68000 socket with some signal translation. The problem is you may not see much performance improvement because the clock frequency is still 16 MHz and bus width is still 16-bit. Instruction cycle is reduced from 4 clocks of 68000 to 3 clocks of 68020, but you may need to add wait state to make up for the slower access time of 68000.

If you want to explore 68020 instructions, it is fairly easy to prototype a 68020 because of its dynamic bus sizing feature. https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:tiny020prototype I also have blank pc board of 68020 that I can mail to you free. https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:tiny020pcb

I haven't talked about it here, but there is a page on retrobrew wiki describing a recent 68020 design, MB020. https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:mb020 Which has 32-bit data bus and faster clock to fully use the 68020 capabilities. This design is also called frankenstein020 because it is collection of left-over RC2014 boards and whatever SIMM72 modules that's available.

Bill

Subject: Re: Plasmo's 68k pathfinder projects Posted by newjes250 on Mon, 01 Jun 2020 23:05:28 GMT View Forum Message <> Reply to Message To Plasmo:

I looked at the Frankenstein020, and you know it is closer to what my 16Mhz 68000 system needs to be for a real bump up in performance. The photo of the motherboard with RC2014 cards shows a 20Mhz 68020 and a 22Mhz oscillator, although the schematic lists a 16Mhz clock. I am wondering how close the RC2014 bus is to a PCXT bus which my system has: it uses regular XT cards for HD MFM drive, Paradise VGA video card in 8bit mode, etc. Is the MB020 board still available? I have other XT and AT bus slot boards that I could possibly couple to the RC2014 bus. The swap register feature would get the dram at address zero and up, which would match as well.

Thanks so much for your response, newjes250

Subject: Re: Plasmo's 68k pathfinder projects Posted by newjes250 on Wed, 03 Jun 2020 03:46:58 GMT View Forum Message <> Reply to Message

Page 70 of 71 ---- Generated from RetroBrew Computers Forum To Plasmo:

Now that I have viewed your MB030 design, the effort to using a 68020 is about the same as a 68030 design if I follow your current CB030 project. Could I get a blank CB030 PCB with programmed/installed CPLD from you? The enjoyment of finishing the build with my own components would be welcome.

Thank you for such wonderful designs. newjes250

Subject: Re: Plasmo's 68k pathfinder projects Posted by plasmo on Wed, 03 Jun 2020 12:22:53 GMT View Forum Message <> Reply to Message If you are in USA, I'll ship you a blank board free. With CPLD installed and programmed, CB030 or MB020 are the same price, $15 + $5 shipping in USA. Bill Edit, I have been preoccupied with other projects. I'll update the board inventory on the retrobrew wiki page to include CB030. Quick summary: partially populated with CPLD, $15; full kit with CPLD installed, $55; assembled and tested, $75. Ship to USA only $5 shipping <-- shipping internationally is ridiculously long due to COVID19.

Page 71 of 71 ---- Generated from RetroBrew Computers Forum