Subject: Tiny68k, 68000 SBC with 16 Meg Memory for CP/M-68K Posted
Total Page:16
File Type:pdf, Size:1020Kb
Subject: Tiny68K, 68000 SBC with 16 Meg memory for CP/M-68K Posted by plasmo on Wed, 01 Nov 2017 04:02:56 GMT View Forum Message <> Reply to Message This is a branch off "Plasmo's 68k pathfinder projects" https://www.retrobrewcomputers.org/forum/index.php?t=msg& ;th=152&start=0& Since the rev 1 of Tiny68K is reasonably matured, I like to start a new topic dedicated to this design and its derivatives. There is a wiki page for Tiny68K: https://www.retrobrewcomputers.org/doku.php?id=boards:sbc:ti ny68k A brief highlight of features: * 68000 CPU with a nominal clock of 8MHz * Entire 68000 address space is filled with a 16-meg SIMM72 DRAM except for I/O devices located at the top 32K bytes. * 68681 dual UART. Port A is dedicate to console at 38400, N81, CTS/RTS handshake. Port B is available for other uses. * IDE44 interface to CompactFlash * Two serial EEPROM, 24C256. Software may boot from either serial EEPROM depending on one jumper select. The second EEPROM is writable in-situ. * A 7-segment display for status indication. plasmo wrote on Fri, 27 October 2017 23:09 * 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 Page 1 of 82 ---- Generated from RetroBrew Computers Forum Most of the issues I was concerned about have been successfully resolved: * The problem with concatenating files using PIP is due to a bug in the BIOS, so is the issue with file upload/download with Kermit. They are both working properly now. * I'm glad I tried other brands of CF because the original setup time was too short. I added more wait states to CF access so it now has appropriate amount of setup time, access time & hold time. It should works reliably for different brands of CF (keep my fingers crossed!. * I now have an utility software that can copy first 32K byte of data in memory to the 2nd serial EEPROM. The utility software needs more polishing, but the hardware is all there to allow in-situ programming of the serial EEPROM. * The creation of new CF disk is still slow. I don't have a Linux box and rawrite32 does not work on my Windows Vista machine. It takes about 30 minutes to serially upload the CP/M68K distribution files. Only need to do that once and when the new CF disk is created, everything works quickly and correctly afterward. * I did all the development and testings with 8MHz CPU clock, but I tried 12MHz clock on two boards and they appear to work. I'm close to shipping out the boards. What need to be done are: * Tweak the boot monitor so it will display various steps on the 7-segment display as it boots up. If the monitor failed to boot, it may show where it failed. * Documentation! Never enough but more is better. Subject: Re: Tiny68K, 68000 SBC with 16 Meg memory for CP/M-68K Posted by plasmo on Wed, 01 Nov 2017 04:28:18 GMT View Forum Message <> Reply to Message computerdoc wrote on Tue, 31 October 2017 02:12Hi 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. Kip, Here are more comments about your design: * For the 40-pin IDE connector, you may want to add a jumper between pin 20 and VCC. Some IDE-to-CF adapter derives the 5V power from pin 20. * Jumper options around 24C256 are not quite right. There need to be a jumper option for each 24C256 from pin 1 to ground. The 24C256 with pin 1 to ground is the boot device. Jumper to pin 7 of 24C256 is for write protect. Only one 24C256 need to be write protected. * You need a 10-pin programming header (2x5) for Altera EPM7128 * SIMM72 draws large current spikes and needs filter capacitors near the connector. Two 10uF caps located at each end of the connector should be enough. * Reset button and voltage monitor do not go directly to 68000. It goes to EPM7128 (signal name nPORST). State machine in EPM7128 holds 68000 in reset until content of the boot 24C256 is Page 2 of 82 ---- Generated from RetroBrew Computers Forum loaded into DRAM then it releases the reset to 68000. * Pin out of PLCC44 in Advance Info for 68681 is correct. * Look at the footprint of the EPM7128. longer finger pads are better for hand soldering.. If you like me to help your bring up the board, send me 2 bare boards. I'll solder down the EPM7128 on both and return one board back to you. I'll populate the 2nd board and see if I can bring it up. Bill Subject: Re: Tiny68K, 68000 SBC with 16 Meg memory for CP/M-68K Posted by plasmo on Sun, 05 Nov 2017 03:38:04 GMT View Forum Message <> Reply to Message OK, I'm ready to ship Tiny68K as assembled boards or kits. I assembled 5 boards to check out the design. All 5 boards work with 12MHz CPU clock even though the 68000 is a 10-MHz part. So it appeared to have good design margins. I'll ship the two assembled boards with 12MHz oscillator. For the kits, I will still ship with 8MHz oscillator just to be safe. I'll PM people who have expressed interested in Tiny68K requesting their shipping address and payment details. Subject: Re: Tiny68K, 68000 SBC with 16 Meg memory for CP/M-68K Posted by plasmo on Mon, 06 Nov 2017 14:13:18 GMT View Forum Message <> Reply to Message I received payments for 6 Tiny68K boards in the last 36 hours. Thank you all! All boards are assembled and programmed; the fully assembled boards are also tested with various diagnostics at 12MHz. I will start shipping them out today and be done by tomorrow. I will PM the USA buyers with tracking numbers. For the international buyers I will send you the Custom number, but USPS does not track the Custom number. Photos below are what you should expect in the package. First two photos are that of a fully assembled & tested board. They are shipped with SIMM72 installed, all you need is apply 5V to the 2.5mm jack and null serial cable with CTS/RTS handshake. The next two photos are what a kit #2 looks like. Discrete capacitors, leaded resistors, and hardware are in separate bags; the 44-pin CF adapter is directly from the factory; and active components are on an anti-static foam. Sockets are for 68681, 68000, and two serial EEPROM. The serial EEPROM (2 pcs) are pre-programmed with identical monitor software. The last photo is the partially assembled board with surface mount components soldered and EPM7128 programmed; the SIMM72 memory has been tested. I'm currently working on a more detailed assembly instruction, the thing I learned and watched out for during the assembly of the last 7 boards. However, this is my design and I'm an experienced assembler (please excuse my gross self indulgence) so if I missed some details please ask for clarifications. I'll get back to you in 24 hours. I'll also add instruction on how to create the 1st CF disk and a listing of the monitor software in the Page 3 of 82 ---- Generated from RetroBrew Computers Forum serial EEPROM.