RetroBrew Computers Forum
Discussion forum for the RetroBrew Computers community.

Home » RBC Forums » General Discussion » Porting CP/M 68K to a repurposed ADC Soneplex MPU board (CP/M 68K)
Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3289] Tue, 01 August 2017 17:27 Go to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
A decade ago I purchased a box of salvaged single board computers based on Motorola MC68302. They were made by ADC Communication as a controller for their Soneplex communication product line. I figured out most of the wirings, wrote a monitor and built a few home projects using these boards. With my recent experiences of CP/M 68K I realize the board also has enough memories and resources to run CP/M.
index.php?t=getfile&id=555&private=0
The board has 3 banks of flash memories. The first bank is 256K bytes and hold the monitor. The other two banks are 1 megabytes each. Collectively they formed a read-only disk to hold the CP/M 68K ver 1.3 distribution files. The RAM is 1 megabyte with the top 256K backed up with a super capacitor. The backed up RAM may serve as a small RAM disk. CP/M 68k resides in $15000 - $1FFFF and the Transient Program Area is from $20000 to BFFFF, or 640K--which "ought to be enough for anybody" Rolling Eyes
I copied the CP/M distribution files into flash and configured the BIOS for Flash disk and RAM disk and this is what I have:
index.php?t=getfile&id=556&private=0
The 256K RAM disk is obviously too small to be really useful. There is a 82C55 on board and all it's outputs are available on the 96-pin DIN 41612 connector. It should not be difficult to add a CompactFlash adapter for the DIN connector. Available on the DIN connector are also a number of discrete I/O, 4 serial ports and a SPI. The processor clock is 16MHz. This is a fairly capable 68000 single board computer. Periodically they are available on eBay for $15-$20 like this one: http://www.ebay.com/itm/122306457847

Disclaimer: I do not know the above seller and haven't bought anything from him. It appears to be the same board as mine, but I don't know whether it will work exactly like mine or not.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3290 is a reply to message #3289] Tue, 01 August 2017 19:20 Go to previous messageGo to next message
computerdoc is currently offline  computerdoc
Messages: 130
Registered: October 2015
Senior Member

Hi Plasmo,
That is a pretty cool looking board! Congratulations on getting CP/M 68K running on it. How did you get the CP/M 68K software into the flash? Do you have some development software for this board? What have you done with it? Will you be creating a wiki entry for this board and software you have adapted to it? I'd like to read up on this.


Kip Koon
computerdoc at sc dot rr dot com
http://www.cocopedia.com/wiki/index.php/User:Computerdoc

[Updated on: Tue, 01 August 2017 19:25]

Report message to a moderator

Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3291 is a reply to message #3290] Tue, 01 August 2017 21:18 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
I wrote about some of the projects I've done here: http://www.easy68k.com/EASy68Kforum/viewtopic.php?f=10&t =1570 I also have a Xbee network around the house and garden using these boards. These boards were cheap & plentiful on eBay 5-10 years back as they were scrapped. Perhaps few people here have bought some and interested in how to re-use them. I'll create a wiki page about the board and how to program custom software into it. It is a brute-force approach, I'm hoping someone more familiar with the board design can provide board design information & better way to upload new software.

CP/M 68K software into flash is a bit complicated. This is the condensed version: Modify the BIOS so CP/M68K will run in the EASy68K environment. Use EASy68K's file I/O calls to read in the image of CPM distribution files which is created with cpmtools. Run CP/M in EASy68K simulator, convert .rel command files to .68k and get rid of unnecessary files so they'll fit in 1.8meg of disk space. Save the modified disk image and convert them to S-record. In the actual hardware, load the S-record and program the flash. Now the disk image is in the flash, load the CPM15000.SR & associated BIOS and run.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3293 is a reply to message #3291] Thu, 03 August 2017 10:36 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Hi Plasmo,
Interesting! My 68k SBCs have operational CF, with the CPU running as fast as 12 MHz. They seem to be working fine, but I can't get the Digital Research BASIC compiler (CB68) to work reliably. I can compile something simple like:
FOR I = 1 TO 50
IF I < 5 THEN GOTO 50
IF I > 45 THEN GOTO 50
PRINT I
50 NEXT I
to compile and run OK, but not something more complex like your "ASCII art" program (I get $03 exception).
I'm wondering if you have ever tried CB68 on this platform, or one of your others? Can you get it to work?
Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3294 is a reply to message #3289] Thu, 03 August 2017 11:15 Go to previous messageGo to next message
Andrew B is currently offline  Andrew B
Messages: 467
Registered: October 2015
Location: Near Redmond, WA
Senior Member
Administrator
Picked up one of these boards for $20 + $10 S/H off eBay, so there are still a few around anyway.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3296 is a reply to message #3293] Fri, 04 August 2017 11:07 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
norwestrzh wrote on Thu, 03 August 2017 10:36
Hi Plasmo,
Interesting! My 68k SBCs have operational CF, with the CPU running as fast as 12 MHz. They seem to be working fine, but I can't get the Digital Research BASIC compiler (CB68) to work reliably. I can compile something simple like:
FOR I = 1 TO 50
IF I < 5 THEN GOTO 50
IF I > 45 THEN GOTO 50
PRINT I
50 NEXT I
to compile and run OK, but not something more complex like your "ASCII art" program (I get $03 exception).
I'm wondering if you have ever tried CB68 on this platform, or one of your others? Can you get it to work?
Roger

Roger,
The "ASCII art" was produced by EhBasic which may have different syntax than CB68.
I am able to download the binary for cb68 on cpm.z80.de, but I can't find the programmer's guide for the CP/M68K version of CB68. Could you give me a quick tutorial on how to compile & run CB68 programs? I can run your short program on my board and then a longer program that didn't work for you and compare results.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3297 is a reply to message #3296] Fri, 04 August 2017 16:26 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
>> The "ASCII art" was produced by EhBasic which may have different syntax than CB68.

Yes, I know. I got EhBASIC going on my 68k, and was able to benchmark the ascii.art thing (very nice trial to test out various compilers and assemblers, BTW!Wink

>> ...but I can't find the programmer's guide for the CP/M68K version of CB68

Same here. I think I found a guide for CP/M 80 and 86, but nothing for 68k. I can tell you what I did, but given my results, I may be doing something very wrong! *grin*

Just create a file with your BASIC code, let's say "ASCII.BAS". Their BASIC compiler appears to be very flexible as far as syntax is concerned. Line numbers are only required on lines that you reference in your code, and feel free to indent and structure your code as you see fit. CB68 doesn't seem to mind.

Then:
CB68 ASCII.BAS
and:
LINK68 ASCII.O, CB68.L68
that ought to produce a .68K file that (theoretically) can be run from the command line.
[Note that CB68.L68 is (I gather) the link library for the thing.]

Thanks for looking at this. I'm *very* interested in your results!

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3298 is a reply to message #3296] Fri, 04 August 2017 16:31 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
>> The "ASCII art" was produced by EhBasic which may have different syntax than CB68.

Yes, I know. I got EhBASIC going on my 68k, and was able to benchmark the ascii.art thing [very nice trial to test out various compilers and assemblers, BTW!]

>> ...but I can't find the programmer's guide for the CP/M68K version of CB68

Same here. I think I found a guide for CP/M 80 and 86, but nothing for 68k. I can tell you what I did, but given my results, I may be doing something very wrong! *grin*

Just create a file with your BASIC code, let's say "ASCII.BAS". Their BASIC compiler appears to be very flexible as far as syntax is concerned. Line numbers are only required on lines that you reference in your code, and feel free to indent and structure your code as you see fit. CB68 doesn't seem to mind.

Then:
CB68 ASCII.BAS
and:
LINK68 ASCII.O, CB68.L68
that ought to produce a .68K file that (theoretically) can be run from the command line.
[Note that CB68.L68 is (I gather) the link library for the thing.]

Thanks for looking at this. I'm *very* interested in your results!

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3299 is a reply to message #3296] Fri, 04 August 2017 16:37 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
>> The "ASCII art" was produced by EhBasic which may have different syntax than CB68.

Yes, I know. I got EhBASIC going on my 68k, and was able to benchmark the ascii.art thing [very nice trial to test out various compilers and assemblers, BTW!]

>> ...but I can't find the programmer's guide for the CP/M68K version of CB68

Same here. I think I found a guide for CP/M 80 and 86, but nothing for 68k. I can tell you what I did, but given my results, I may be doing something very wrong! *grin*

Just create a file with your BASIC code, let's say "ASCII.BAS". Their BASIC compiler appears to be very flexible as far as syntax is concerned. Line numbers are only required on lines that you reference in your code, and feel free to indent and structure your code as you see fit. CB68 doesn't seem to mind.

Then:
CB68 ASCII.BAS
and:
LINK68 ASCII.O, CB68.L68
that ought to produce a .68K file that (theoretically) can be run from the command line.
[Note that CB68.L68 is (I gather) the link library for the thing.]

Thanks for looking at this. I'm *very* interested in your results!

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3300 is a reply to message #3299] Fri, 04 August 2017 16:40 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Sorry for the duplication -- the site is doing something very strange!
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3301 is a reply to message #3300] Fri, 04 August 2017 19:07 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Roger,
Good to hear you are having problem with the website as well. I've had an intermittent internet connection last 2-3 days due to weather and I thought the problem was with my connection.

Thanks for your instruction on how to compile and run cb68.

I used EASy68K simulator to convert cb68.rel to cb68.68k and created a second flash drives, drive B, that contains cb68.68k, cb68.l68, and cb68.doc. I only have 2 meg of flash on the ADC SPX-MPU board, so I'm trying to save space. So now drive A contains CP/M 68K distribution files, drive B contains the cb68 files, and drive C is the 256K RAM drive

The next 2 screen shots shows the content of drive B, compiling your short basic program with cb68, and link it, and then run it. ( you are correct that output of the link68 is a .68k executable)
--------------------------------------
I need to change the original ascii art code so statement 110 is now:
110 if (a*a+b*b)>4 then goto 200

With that change, I'm able to compile, link, and run it. See next 2 screen shots.
It takes 104 seconds to display the ascii art. This is compiled cb68 code running on 16MHz 68302, 16-bit wide data bus and zero wait state RAM. Compare that to 102 second on 8MHz 68000 running Lee Davison's EhBasic interpreter.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3302 is a reply to message #3301] Fri, 04 August 2017 19:11 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
The internet connection is too flaky to upload pictures. It'll have to wait for another day.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3303 is a reply to message #3302] Fri, 04 August 2017 21:29 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Here are the two screen shots of the short.bas compiling, linking & executing
index.php?t=getfile&id=559&private=0
index.php?t=getfile&id=560&private=0

Here are the two screen shots of the asciiart.bas compiling, linking & executing
index.php?t=getfile&id=561&private=0
index.php?t=getfile&id=562&private=0
  • Attachment: short_1.jpg
    (Size: 124.29KB, Downloaded 2527 times)
  • Attachment: short_2.jpg
    (Size: 42.16KB, Downloaded 2433 times)
  • Attachment: asciiart_1.jpg
    (Size: 107.58KB, Downloaded 2508 times)
  • Attachment: asciiart_2.jpg
    (Size: 249.59KB, Downloaded 2472 times)
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3306 is a reply to message #3303] Sat, 05 August 2017 10:18 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Hmmm .....

Here's what happens when I try that:

10A>cb68 plasmo.bas
--------------------------------------------------
CB68 CBASIC Compiler Version 1.0
Serial No. 3123-0000-000061 All Rights Reserved
Copyright (c) 1983 Digital Research, Inc.
--------------------------------------------------
end of pass 1
end of pass 2
1: 10 for y=-12 to 12
2: 20 for x=-39 to 39
3: 30 ca=x*0.0458
4: 40 cb= y*0.08333
5: 50 a=ca
6: 60 b=cb
7: 70 for i=0 to 15
8: 80 t=a*a-b*b+ca
9: 90 b=2*a*b+cb
10: 100 a=t
11: 110 if (a*a+b*b)>4 then goto 200
12: 120 next i
13: 130 print " ";
14: 140 goto 210
15: 200 if i>9 then i=i+7
16: 205 print chr$(48+i);
17: 210 next x
18: 220 print
19: 230 next y
end of compilation
no errors detected
code area size: 738 000002e2h
data area size: 88 00000058h
common area size: 0 00000000h
symbol table space remaining: 49687

10A>link68 plasmo.o,cb68.l68
--------------------------------------------------
LINK68 Overlay Linker Release 0.f
Serial No. XXXX-0000 All Rights Reserved
Copyright (c) 1983 Digital Research, Inc.
--------------------------------------------------

plasmo.o,cb68.l68

10A>plasmo


Exception $03 at user address $000205E0. Aborted.
10A>

How are you building the CB68.REL file in the simulator? I thought that RELOC had to use a memory configuration exactly like the run time environment.

Just for grins -- here are some ASCII art run times:

MBASIC(interpreter) (Z80 @ 10 MHz) 1:54
MBASIC(interpreter) (FPGA Z80 :46 (equiv. to ~25 MHz)]
CB68(compiled) (68k @ 6 MHz) 4:23 <== I can get it to work on one of my slower 68ks
EhBASIC(interpreter) (68k @ 12 MHz) 0:55
EhBASIC(interpreter) (CP/M 68k @ 12 MHz) 1:26
EhBASIC(interpreter) (68k @ 10 MHz) 1:06
EhBASIC(interpreter) (68010 @ 10 MHz) 1:02
EhBASIC(interpreter) (8-bit strapped 68EC00 @ 10MHz) 2:55
GCC(compiler) (68k @ 12 MHz) 0:20

I've got the GCC toolchain running on my Linux box, and it seems to generate very efficient 68k code. Don't know why I worry about CB68, but it just bugs me!

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3307 is a reply to message #3306] Sat, 05 August 2017 11:25 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Roger,
The BIOS for the EASy68K simulator is same as the BIOS running in the ADC MPU board. I used EASy68K trap #15 service calls for console I/O for both BIOS. Drives A, B, C are all mapped to same areas in memory. The TPA is the same (starts at 0x20000, length of 0xA0000). So whatever I see in the simulator, I should see in the hardware. I just ran the ascii art in simulator and captured the disk image of the program from 0x20000 to 0x26000 (program is 23K). It is attached below.
Assuming your TPA starts at 0x20000, the data at location 0x205E0 should be 0x00010042 06AA0000 00010046 60D44E75 I think these information may be useful with DDT debugger, then again, I never used DDT before so I can be very wrong!

I can upload the BIOS if you are interested. I'm starting a retrobrew wiki page on the SPX-MPU board and eventually all the software will be uploaded there, but it is a work-in-progress.
https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:spx-mpu

Thanks for you benchmark results. The EhBASIC running on your 68k @ 12MHz is fast! By my calculation if I replace the 8Mhz with 12MHz on my 68000, the benchmark time should be 68 seconds vs your 55 seconds. That's quite a difference for running the same program. The only difference I can think is the trap #15 services for console I/O and more efficient serial port.
  • Attachment: asciiart.zip
    (Size: 10.43KB, Downloaded 463 times)
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3308 is a reply to message #3307] Sat, 05 August 2017 11:40 Go to previous messageGo to next message
wsm is currently offline  wsm
Messages: 232
Registered: February 2017
Location: AB, Canada
Senior Member
Just for giggles, I tried that out on my 33MHz Z8S180. For reference:

MBASIC 4.51 interpreter - 0:32
MBASIC 5.21 interpreter - 0:30
BASCOM compiler - 0:12
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3309 is a reply to message #3294] Sat, 05 August 2017 11:45 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Andrew B wrote on Thu, 03 August 2017 11:15
Picked up one of these boards for $20 + $10 S/H off eBay, so there are still a few around anyway.


There seem to be some interests with the ADC SPX-MPU boards (A number of boards were purchased off eBay in the last few days) so I started a wiki page about the SPX-MPU board. As I walked through the steps in repurposing the board, I realized the process is somewhat complex and software is certainly klugy (it was my first 68K assembly program after 25+ years hiatus). I fear it would be discouraging to people wanting to repurpose their boards, so I want to make this offer to retrobrew forum members: I will repurpose your boards and install CP/M68K free of charge if you would pay for shippings both way. I live in New Mexico, USA. Please PM me for shipping details. In the meantime I'll continue to work on the wiki page so you'll have all the info I have on SPX-MPU.
Bill Shen
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3313 is a reply to message #3307] Sat, 05 August 2017 20:43 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Hi Plasmo --

What is that .zip file? I wanted to try it out on my SBC, but when I un-zipped it and got asciiart.bin, I discovered that it isn't a bin file at all. Seems to have some directory entries at the beginning, a Digital Research copyright embed after that, and then quite a distance down in the file, some references to ASCIIART.BAK, -.BIN, -.BAS, and -.O !! Can't figure out how to extract the goodies.

If you can generate an S-record file (SENDC68) for it, that would be great (for me anyway). Loading and running at $20000 is fine.

Thanks.

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3314 is a reply to message #3308] Sat, 05 August 2017 20:47 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
>> Just for giggles, I tried that out on my 33MHz Z8S180. For reference:

>> MBASIC 4.51 interpreter - 0:32
>> MBASIC 5.21 interpreter - 0:30
>> BASCOM compiler - 0:12

Thanks, Bill. I'll add those times to my [growing] list. 33MHz Z8S180 is a hot number!!!

[Not sure if my MBASIC runs were ver. 4.51 or 5.21. Gotta' check that.]

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3315 is a reply to message #3314] Sat, 05 August 2017 22:20 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Roger,
That bin file was the image of asciiart.68k when it was loaded into TPA. I thought you may have memory corruption issues (location 0x205E0 in particular), so that was a correctly working image for comparison.

It occurs to me now that perhaps the problem is not loading of asciiart.68k into TPA, but the program asciiart.68k itself. Perhaps something is wrong with link68 so the output of asciiart.68k is not correct. So attached is the zipped asciiart.68k

You mentioned that you can use s-record of asciiart.68k (as generated by sendc68). I also attach the srecord file (asciiart_srecord.txt). Out of curiosity, how do you load and execute this s-record in the CP/M environment?
Bill
---------------
Edit, I noticed you did all the compiling and linking as user 10. Have you try it as user 0?

[Updated on: Sat, 05 August 2017 22:22]

Report message to a moderator

Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3320 is a reply to message #3315] Sun, 06 August 2017 12:08 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Hi Bill --

Thanks for the asciiart files. I'll try them ASAP. We both use the same starting address for TPA [$20000], so I anticipate that all will be fine, but we'll see!

>> how do you load and execute this s-record in the CP/M environment?

I wrote a little program to load S-records...well, actually I swiped the S-record loader code from my monitor (modified version of the Antonakos monitor), and wrote some CP/M code around it to save the file to "disk". Want a copy? Is it permissible to post something like that here -- it is about 500 lines of code? [I feel compelled to warn you that I'm terrible at 68k assembler coding! *grin* ]

>> I noticed you did all the compiling and linking as user 10. Have you try it as user 0?

No. I used cpmtools to create that image of the filesystem, and user 10 was the first empty user area (other than user 0). So, I put it there. I could copy it elsewhere, even to an empty "disk", but I wanted to avoid the possibility of corruption during a copy. You are correct that the problem could be anywhere -- CB68, its link library (CB68.L68), or even LINK68. I'm trying to narrow down the list, so thanks again for the asciiart code. I'm hoping that it will help.

As an aside, user areas in a CP/M filesystem are really an artifice -- files that go in user 0 can be stored right alongside those in user 10. It is all one giant directory area. The only difference is the first byte of the directory entry (user 0 has that byte 0, and user 10 has an $a there), so I'm betting that the actual user area doesn't make a whole lot of difference. Hope to find out.

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3329 is a reply to message #3320] Sun, 06 August 2017 15:46 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
norwestrzh wrote on Sun, 06 August 2017 12:08
Hi Bill --

I wrote a little program to load S-records...well, actually I swiped the S-record loader code from my monitor (modified version of the Antonakos monitor), and wrote some CP/M code around it to save the file to "disk". Want a copy? Is it permissible to post something like that here -- it is about 500 lines of code? [I feel compelled to warn you that I'm terrible at 68k assembler coding! *grin* ]



Yes, I love to have a copy of your program that saves S-record file to disk.

Since our systems have the same TPA setup, you can also send me your version of asciiart.o and asciiart.68k. I can run it on my board and compare results.

Bill
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3332 is a reply to message #3329] Sun, 06 August 2017 17:04 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
>> Yes, I love to have a copy of your program that saves S-record file to disk.

Here ya' go .... just remember that it *completely* ignores the address on the S-record. If your execution address is different than $20000, you are going to have to become familiar with DDT. You might have to anyway. *grin*

For example, if you upload an S-record file with code that needs to be at, say, $50000 [just for example], then you would have to start up DDT, and use the "r" command to read the file:
r<myfile>.bin
DDT will spit the starting and ending addresses of the file back at you. Then you do:
m<begin>,<end>,50000
and then start it up with:
g50000
That's assuming that you don't want to set any breakpoints.

If your file is a .68K file [i.e. it has valid headers], then use "e" instead of "r" to read it in.

Hope this helps. My apologies if you are a DDT pro (I'm not)!

Roger

P.S. I encountered a *ahem* small problem with your asciiart files. I think that your UART is at a different address than mine? Is it a 68681 DUART? At what address? Mine is at $700001. Maybe I can patch things up so that they would work?
  • Attachment: srin.s
    (Size: 13.66KB, Downloaded 516 times)
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3333 is a reply to message #3332] Sun, 06 August 2017 17:47 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Thinking about it, that last comment about the UART doesn't really make any sense. BASIC ought to be independent of the CONIN/CONOUT hardware, I think, and just use BIOS calls???

Here is what happens when I uploaded the .68K file you sent:

file loaded successfully.

3A>dir
A: CLIB : CLINKE SUB : CLINKF SUB : CLINK SUB : ED REL
A: LIBE A : LIBF A : LO68 REL : RELOC3 SUB : S O
A: ASCII BIN : EHBASIC BIN : STORE S : SUDOKU BIN : STORE 68K
A: SIEVE S : SIEVE 68K : SRIN S : ASCIIART BIN : SRIN 68K
A: ASCIIART 68K <== there it is
3A>asciiart
Insufficient memory or bad file header <== won't run directly
3A>ddt

********************************************************
* DDT-68K 9/20/84 Version 1.3 *
* Serial #XXXX-0000 All Rights Reserved *
* Copyright 1982,1983,1984,1985 Digital Research Inc. *
********************************************************

-rasciiart.68k <== try it as a binary file
Start = 00020000 End = 00025B7F
-g20000
Address Error at 00020806
Address Error at 001FA0B6
PC=4279001F USP=EBC22E8E SSP=0697FFFF ST=FF7C=>TR SUP IM=7 EXT NEG ZER
D 610002D4 2D40FF78 67EE206E FF780C10 002D660E 33FC0001 001FEE94 52AEFF78
A 60064279 001FEE94 206EFF78 10104880 600001BC 2EAEFF78 61000346 600001C8
Address Error at 001FBF46
Illegal Instruction at 001F814C
Address Error at 001FA1CA
?
Line 1111 Emulator at EC260000
Bus Error at 001FA1CA

[and many, many more of the same.]

3A>ddt

********************************************************
* DDT-68K 9/20/84 Version 1.3 *
* Serial #XXXX-0000 All Rights Reserved *
* Copyright 1982,1983,1984,1985 Digital Research Inc. *
********************************************************

-easciiart.68k <== try to load it as an executable file
Insufficient memory or bad file header
-

Can't even move it and run it at the *real* TPA starting address:

3A>ddt

********************************************************
* DDT-68K 9/20/84 Version 1.3 *
* Serial #XXXX-0000 All Rights Reserved *
* Copyright 1982,1983,1984,1985 Digital Research Inc. *
********************************************************

-rasciiart.68k
Start = 00020000 End = 00025B7F
-m20000,25B7F,20100
-g20100
Bus Error at 00000FFC
Address Error at 001FA0B6
PC=4279001F USP=EBC22E8E SSP=0697FFFF ST=FF7C=>TR SUP IM=7 EXT NEG ZER
D 610002D4 2D40FF78 67EE206E FF780C10 002D660E 33FC0001 001FEE94 52AEFF78
A 60064279 001FEE94 206EFF78 10104880 600001BC 2EAEFF78 61000346 600001C8
Address Error at 001FBF46
Illegal Instruction at 001F814C
Address Error at 001FA1CA
?
Line 1111 Emulator at EC260000
Bus Error at 001FA1CA
?
Line 1111 Emulator at EC260000
Bus Error at 001FA1CA

I'm disappointed.

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3337 is a reply to message #3333] Tue, 08 August 2017 10:53 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Roger,
I tried to run the asciiart_68k.zip that I uploaded 8/5/17 and I also experienced the same problem. That file was derived by saving the image of a disk that contains a working asciiart.68k and use cpmtools (cpmcp) to transfer asciiart.68k to my PC. I believe my disk definition file associated with cpmtools was incorrect. I made corrections and transferred asciiart.68K to my PC again. It is attached below.

I tried two methods to verify asciiart.68k:
1, I used cpmtools and copy it into a CPM disk image and execute it in CPM simulator. This works for one disk image and does not work for a different disk (the two disks have different block size and disk capacity). I'm not quite sure why.
2, Use bin2mot to convert asciiart.68k to s-record starting from 0x20000 then use your srin.s (changed the DUART address to match my hardware) to copy the s-record to CPM file then execute it. This works. I'm pretty confident the asciiart.68k is correct.

I tried sendc68 on asciiart.68k. The s-record generated starts from address 0, and is quite a bit smaller than the original asciiart.68k file in size. When I change the address offset to 0x20000 then copy to CPM using srin, the resulting file is not executable. I don't understand the purpose of sendc68, I don't think it generate the exact s-record image of the executable.

Edit: I just realize as I went through your srin.s code that it is not necessary to generate S record with address offset of 0x20000. No offset works just fine, but you already know this.
  • Attachment: asciiart.zip
    (Size: 7.54KB, Downloaded 392 times)

[Updated on: Tue, 08 August 2017 12:09]

Report message to a moderator

Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3340 is a reply to message #3337] Tue, 08 August 2017 19:39 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Bill,
Learning new things about the strange world of CP/M 68k every day. *smile* I discovered that sendc68 skips over the CP/M 68k header. Using the Digital Research version of DUMP seems to give a true snapshot of a file. BUT, then if you grab a copy of the DUMP output, you have to have a way to convert it back to binary [and from there convert to S-record?]. I can give you a copy of a utility I wrote [pretty rude and crude] to convert a dump file back to binary. It is written in C [I run it on my Linux box], called "eatdmp". It is a little picky about the format of the dump file.

I want to be sure I understand correctly -- are you saying that, with method #2, that you can get my copy of asciiart.68k to run??

I'll try to run the latest asciiart.zip file that you uploaded -- see what happens.

As a side note, I picked up an ACC Danube router/protcol converter today at a second hand store for $5[!!!]. It contains a 68302, some flash, some DRAM [both flash and DRAM are SIMMs], and a pair of 27c010 EPROMs. Looks like there is a UART to drive a console [connection on back] and line drivers [1488/1489]. A couple of 20 MHz oscillators on board. And, of course, it has a RJ45 connection for network. I'm still trying to figure it out. It wants 24v A.C. at a little less than half an amp. Looks very clean inside. I can't believe my luck! Of course, I couldn't open it up in the store, so I just bought it on a hunch! Don't know [yet] if it works. Connectors aren't ones that I commonly use.

Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3341 is a reply to message #3340] Tue, 08 August 2017 20:47 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
A little bit later .....

I converted the file that you sent (asciiart.68k) to S-records, and loaded it using "srin". When I tried to execute it directly from the command line, I got the same old "$03 exception". BUT, just for grins I loaded the file via DDT. DDT checks the header of a file if you load it with the "e" command. It echoed back what looked to me to be correct values extracted from the header. So I tried to run it. It worked!!!! I don't think I've ever tried that before [running it via DDT and the "e" command], so I did the same with a version of the program that I had created previously [and that gave "$03 exception" when I tried to run it directly from the command line]. That worked too. So, for some strange reason, these files that I create with CB68 will run via DDT, but not directly from the command line. Very odd!

Thanks for all your efforts on this. It helped immensely!!

Roger
  • Attachment: aug8.log
    (Size: 2.81KB, Downloaded 485 times)
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3346 is a reply to message #3341] Wed, 09 August 2017 11:14 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Roger,
I'm really new to CP/M so I don't understand how asciiart.68k won't work at the command level, but working with DDT's help. There must be some differences between our hardware.

Thank you for your kind offer regarding "eatdmp" (cute name!Wink but I don't have a Linux box running right now so I won't be able to use it.

That's how I started with my ADC spx-mpu boards. I bought a couple boards from a local electronic surplus store for $5 each. They worked so I went back and bought out his inventory of a couple dozen boards. I bought more off eBay, but wind up paying more than $5 per board with shipping and defective boards. Too bad the local store is closed, it had so many interesting surplus electronic items, including Altair S-100 boards.

Are the 27c010 socketed? Check the connection from chip selects of the 27c010 to 68302's CS0 (pin 128 of plastic quad flat pack). If so, they are the boot EPROM. If they are socketed, then repurposing the hardware should be relatively straightforward.
Bill
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3348 is a reply to message #3346] Wed, 09 August 2017 11:54 Go to previous messageGo to next message
norwestrzh is currently offline  norwestrzh
Messages: 196
Registered: November 2015
Senior Member
Bill,
> I'm really new to CP/M so I don't understand how asciiart.68k won't work at the command level, but working with DDT's help.
I don't understand it either. At a very high level, there must be some difference in how the operating system loads an executable file, and the way DDT does it. Perhaps different stack allocations? Maybe I'll figure it out ..... eventually?

On my "Danube" router ...
>> Are the 27c010 socketed?
Yes, I plan on popping them out of the sockets and dumping them.
>> Check the connection from chip selects of the 27c010 to 68302's CS0 (pin 128 of plastic quad flat pack).
Thanks for the tip! I'll check it out. They are almost certainly the boot code.
I hope I can get this thing working as a general purpose 68k. It is in excellent shape!
Roger
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3351 is a reply to message #3289] Tue, 15 August 2017 13:01 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
plasmo wrote on Tue, 01 August 2017 17:27

.
.
.
This is a fairly capable 68000 single board computer. Periodically they are available on eBay for $15-$20 like this one: http://www.ebay.com/itm/122306457847



I have had PM conversations with buyers of the SPX-MPU boards on eBay that I referred to in my original post of this thread. It turns out that these boards are not the same as mine. All they have is 29F010 flash chips, no 29F040 for bank 2 and bank 3. This is bad news because 29F010 is too small to put CP/M68K distribution files, even a drastically pared down version. I felt responsible for claiming that spx-mpu can be repurposed to run CP/M68K, but didn't anticipate there are boards out there with 29F010 flash only. So I had privately offered to exchange (one-for-one) my boards with 29f040 and CP/M68K already installed for their boards with 29f010 only. I understand there are more recent buyers of the spx-mpu boards and I want to offer this exchange publicly: Send me a PM with your shipping address that you want to exchange your spx-mpu with 29F010 and I'll send you my address and ship you a board with 29F040 and CP/M68K already installed. No money will be involved in this exchange; we each pay for the shipment of our own boards. You can find more information about the board with 29F040 and CP/M68K installed here:
https://www.retrobrewcomputers.org/doku.php?id=builderpages: plasmo:cmp68k_mpu302
Bill
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3354 is a reply to message #3351] Sat, 19 August 2017 10:54 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
index.php?t=getfile&id=569&private=0
MicroEMACS running on repurposed spx-mpu. The C sources are downloaded from cpm.z80.de and compiled/linked use the CP/M68K C tool chain. There are no instruction on how to compile them. This is how I did it:
* Use the included C.SUB to compile all C programs (there are 17 C programs)
* use the included ASM.SUB to assemble the included BIOS.S
* use the included ARCHIV.SUB to form library, ME.LIB
* use the included MERLINK.SUB to generate ME.REL
* use RELOC.68K to convert ME.REL to ME.68K.

When moving cursor up or down with up arrow or down arrow, don't hold down the arrow key. At high repetition rate some of the arrow key strokes are read as character inputs instead of cursor manipulation command and corrupt the data file. Use CTL-V and ESC-V to move down/up pages.

Zipped ME.REL binary and ME.REL in S-record format are attached
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3359 is a reply to message #3354] Tue, 22 August 2017 07:34 Go to previous messageGo to next message
mikemac is currently offline  mikemac
Messages: 250
Registered: March 2017
Senior Member
Nice!

plasmo wrote on Sat, 19 August 2017 10:54

When moving cursor up or down with up arrow or down arrow, don't hold down the arrow key. At high repetition rate some of the arrow key strokes are read as character inputs instead of cursor manipulation command and corrupt the data file. Use CTL-V and ESC-V to move down/up pages.


Sounds like buffer overflow on the UART. Are you sure you have HW flow control working? Years ago we had a 68K Unix system hooked up to a Beehive terminal. The function keys, including the arrow keys, send a 3 bytes escape sequence which would overflow the 1 byte buffer of the UART. Manually sending the escape sequence or using the control key equivalent would work everytime.



Mike
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3364 is a reply to message #3359] Tue, 22 August 2017 11:33 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Mike,
Thank you for that insight! I have no hardware flow control currently. Looking at the output of the down arrow key, I see 3-byte output, <ESC>,[, B (0x1B, 0x5B, 0x42). When down arrow key is held down, I see the character 'B' inserted intermittently in the text. So you are right, it is a case of buffer overflow. If I use Ctrl-N repeatly (equivalent to using down arrow key in microEMACS), I see no spurious text inserted. So I should either have hardware flow control or an interrupt driven console I/O.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3374 is a reply to message #3364] Fri, 25 August 2017 13:52 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
Mike,
Confirming your observation that it is buffer overflow on the UART that causes extraneous characters being inserted when holding down the keyboard up/down arrows keys: I enabled RTS/CTS hardware handshake on the serial port. Now I can hold down the up/down arrow keys and no extraneous characters are generated. Thanks!
Another bonus with hardware handshake is that gkermit downloaded from
ftp://kermit.columbia.edu/kermit/archives/gkermit68.tar.gz
is working now. Prior to this gkermit can send file to my PC correctly but can't receive data--too many retries. With hardware handshake, it can send & receive text data just fine.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3404 is a reply to message #3374] Sat, 02 September 2017 11:44 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
I kludge up a IDE-CF interface board to the SPX-MPU board via the 96-pin DIN connector. The IDE-CF is driven by the 82C55 on the SPX-MPU board. The BIOS is updated with 4 more drives so drives A & B are read-only flash drives, drive C is RAM drive, drives D thru G are 8 megabyte each on IDE-CF:
A>stat dsk:

        A: DRIVE CHARACTERISTICS
   12,288: 128 BYTE RECORD CAPACITY
    1,536: KILOBYTE DRIVE  CAPACITY
      256: 32 BYTE  DIRECTORY ENTRIES
        0: CHECKED  DIRECTORY ENTRIES
      128: 128 BYTE RECORDS / DIRECTORY ENTRY
       16: 128 BYTE RECORDS / BLOCK
    1,024: 128 BYTE RECORDS / TRACK
        0: RESERVED  TRACKS

        B: DRIVE CHARACTERISTICS
    3,072: 128 BYTE RECORD CAPACITY
      384: KILOBYTE DRIVE  CAPACITY
      256: 32 BYTE  DIRECTORY ENTRIES
        0: CHECKED  DIRECTORY ENTRIES
      128: 128 BYTE RECORDS / DIRECTORY ENTRY
       16: 128 BYTE RECORDS / BLOCK
    1,024: 128 BYTE RECORDS / TRACK
       12: RESERVED  TRACKS

        C: DRIVE CHARACTERISTICS
    2,048: 128 BYTE RECORD CAPACITY
      256: KILOBYTE DRIVE  CAPACITY
      128: 32 BYTE  DIRECTORY ENTRIES
        0: CHECKED  DIRECTORY ENTRIES
      128: 128 BYTE RECORDS / DIRECTORY ENTRY
        8: 128 BYTE RECORDS / BLOCK
    1,024: 128 BYTE RECORDS / TRACK
        0: RESERVED  TRACKS

        D: DRIVE CHARACTERISTICS
   64,512: 128 BYTE RECORD CAPACITY
    8,064: KILOBYTE DRIVE  CAPACITY
      512: 32 BYTE  DIRECTORY ENTRIES
        0: CHECKED  DIRECTORY ENTRIES
      256: 128 BYTE RECORDS / DIRECTORY ENTRY
       32: 128 BYTE RECORDS / BLOCK
    1,024: 128 BYTE RECORDS / TRACK
        1: RESERVED  TRACKS

        E: DRIVE CHARACTERISTICS
   64,512: 128 BYTE RECORD CAPACITY
    8,064: KILOBYTE DRIVE  CAPACITY
      512: 32 BYTE  DIRECTORY ENTRIES
        0: CHECKED  DIRECTORY ENTRIES
      256: 128 BYTE RECORDS / DIRECTORY ENTRY
       32: 128 BYTE RECORDS / BLOCK
    1,024: 128 BYTE RECORDS / TRACK
       64: RESERVED  TRACKS

        F: DRIVE CHARACTERISTICS
   64,512: 128 BYTE RECORD CAPACITY
    8,064: KILOBYTE DRIVE  CAPACITY
      512: 32 BYTE  DIRECTORY ENTRIES
        0: CHECKED  DIRECTORY ENTRIES
      256: 128 BYTE RECORDS / DIRECTORY ENTRY
       32: 128 BYTE RECORDS / BLOCK
    1,024: 128 BYTE RECORDS / TRACK
      128: RESERVED  TRACKS

        G: DRIVE CHARACTERISTICS
   64,512: 128 BYTE RECORD CAPACITY
    8,064: KILOBYTE DRIVE  CAPACITY
      512: 32 BYTE  DIRECTORY ENTRIES
        0: CHECKED  DIRECTORY ENTRIES
      256: 128 BYTE RECORDS / DIRECTORY ENTRY
       32: 128 BYTE RECORDS / BLOCK
    1,024: 128 BYTE RECORDS / TRACK
      192: RESERVED  TRACKS


index.php?t=getfile&id=587&private=0

On paper, IDE access via the 82C55 is quite slow; it takes four instructions for byte access and 5 instructions for word access; compare that to single instruction for byte or word access for bus-connected IDE interface. I did a quick benchmark of disk operation:

Pip 250K bytes of files from flash drive to RAM drive takes 3.5 seconds,
Pip 250K bytes of files from flash drive to IDE-CF takes 14.5 seconds,
Pip 250K bytes of files from IDE-CF to RAM drive takes 4.5 seconds.

So write to IDE-CF is slow, but read from IDE-CF is fairly quick compare to the RAM drive access. I think the bottleneck is in the CP/M overhead and IDE write itself. The access time of the CF registers is a small part of the overall performance.

[Updated on: Sat, 02 September 2017 11:48]

Report message to a moderator

Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3405 is a reply to message #3404] Sat, 02 September 2017 12:06 Go to previous messageGo to next message
wsm is currently offline  wsm
Messages: 232
Registered: February 2017
Location: AB, Canada
Senior Member
Quote:

So write to IDE-CF is slow, but read from IDE-CF is fairly quick compare to the RAM drive access. I think the bottleneck is in the CP/M overhead and IDE write itself. The access time of the CF registers is a small part of the overall performance.

One thing that you may be overlooking is that file creation in CP/M takes at least 3 write operations: directory allocation, data and finally directory completion. On your CF card there may also any delays after the writes before the card is ready to accept new commands.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3406 is a reply to message #3405] Sat, 02 September 2017 15:18 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
You are right that not only there are multiple writes, there are also flash erasure-before-write delay that is not deterministic due to remap of flash sectors by the CF controller. I'd logged the delays from write command to flash ready to accept write data and I can see intermittently a large delay that is 2 orders of magnitude greater than the normal delay. This makes performance measurements difficult.

Early on I was hung up on how many instructions it takes to wiggle the CF control lines via the 82c55. Beside, it was a downright primitive way of interfacing to hardware. I thought about a more efficient hardware interface, but the 82c55 is already there and all port signals are available on the 96-pin connector, so I thought I try it first. My feeling now is that a bus-connected IDE-CF interface may be a tad faster, but hardly justify the board modifications it requires. So I'm going ahead with the layout a simple DIN-to-IDE pc board.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3407 is a reply to message #3406] Sat, 02 September 2017 18:12 Go to previous messageGo to next message
wsm is currently offline  wsm
Messages: 232
Registered: February 2017
Location: AB, Canada
Senior Member
You got me kind of curious since I've played around with a couple of different flash interfaces on my 33MHz Z180 system. So far I've only been comparing relative times within this system. Using a 264K file (as reported by STAT), I got the following:

RAM disk to CF card (2GB Verbatim) : 2.8 seconds using DMA mode 2
RAM disk to serial flash chip array : 3.5 seconds using I/O instructions

Reads were harder to measure with a stopwatch ... about 1 second from CF to RAM disk.

Both interfaces used a data buffer of the appropriate size.

[Updated on: Sat, 02 September 2017 18:14]

Report message to a moderator

Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3409 is a reply to message #3407] Sat, 02 September 2017 22:30 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
That z180 is an impressive machine. Judging by the gap in performance, I think there are a lot of room for improvement for the 68000 running CPM as well. The write algorithm in the BIOS can certainly uses some refinement.
Re: Porting CP/M 68K to a repurposed ADC Soneplex MPU board [message #3417 is a reply to message #3409] Mon, 04 September 2017 15:04 Go to previous messageGo to previous message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
If there are interests in the repurposed SPX-MPU board for CPM-68K, I can offer boards at $20 each plus shipping ($8 in the USA). The board will have CPM-68K v1.3 distribution files installed in drive A (read only), utilities in drive B (read only), and RAMdisk in drive C (read/write). It is ready to run CPM-68K out of the box. You'll need a 5V power at 500mA, min, null modem cable for DB25, and a terminal software running at 38400 baud, 8,1,N with hardware flow controls. So far I've modified 8 SPX MPU boards successfully, 3 for my own testings, 5 to replace the SPX-MPU boards purchased on eBay that do not have large enough flash memories. I'm currently working on a CompactFlash daughter board. It is a simple design with just one 7400 IC, so I expect the pc board to be well smaller than 100mm x 100mm and costs $1.50 for the bare board. Please let me know if you are interested.


Previous Topic: Any ParPortProp PCB's available?
Next Topic: ROMSIMM for Macintosh SE/30 aficionado


Current Time: Sat May 17 08:07:43 PDT 2025

Total time taken to generate the page: 0.01546 seconds