[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [N8VEM-S100:1323] Re: RomWBW on S-100 Project status...



Hi Douglas

I have a z80 board, 4 meg ram board, dual ice and serial I/O board.  Your config will work but probably not with the bank software but I have both version working.  I kind of re-did Johns Monitor software to take out the dependencies on the iobyte and some his hardware config specific things.  I did just enough to get it to work but I would like to redo it because it needs some house cleaning as well.  I must admit it is challenging bringing up a system with out a working system to compare with but I did.  The trick was to write a monitor incrementally.  I started with z80 board and serial I/O board and just using ROM no RAM got the serial I/O port working.  Then I just started building up the Monitor one command at a time until I had a full monitor.

Unfortunately make is one of the most misunderstood tool there is.  People don't bother to understand it and just hack until they get something to work and to continue the abuse they just copy an existing bad Makefile and start hacking on that so it just gets worse and continues to propagate.   I have looked at 1000's of Makefiles over the years and I just cringe reading them.  I have also written many 1000 Makefiles in support of building complex operating systems that have many millions of lines of code in them.

I will try to dig up my monitor source and send you a copy - it might help you unbrick your system.  It is compiled using John's methods with altairzsim which is not difficult to do - I plan to convert it to sdas assembler or gcc gas when I get some of my other projects off the deck.


On Friday, January 25, 2013 8:02:41 PM UTC-6, douglas_goodall wrote:
On 1/25/2013 5:35 PM, yoda wrote:
Hi Douglas

As you know I am interested - but really on the CP/M 80 Plus and beyond as I already have it running on a set of John's boards.  
Are you running John's version or have you got your own now?

Due to lack of hardware, I haven't been able to boot John's yet. There is some business about the IOBYTE that is
causing John's BIOS to ignore my IO board serial port, so when it boots, it bricks.

If I had a working system with plus, I would give consideration to just going with that. For me, it is about getting
a usable build scenario so I have a known good starting point to move on from.

Please what is the hardware configuration required to run what you have?

I really want to work in conjunction with you and not waste engineering time duplicating effort or moving backwards
instead of forwards.

I am also interested in making my utilities portable across the operating system boundaries (with a re-compile).

I have been writing them in C since RomWBW 2.0. I would like to dialogue with you about this topic.

The situation with the Makefile's is that my attempt at writing one Makefile for all three platforms was rejected
as being overly complex, although it was only complex enough to do the job in my opinion. I really don't like
the Windowsisms at all and would be happy to see them gone. Unfortunately, Wayne (God bless him, and no
harm, to him intended, he is my pal) is totally involved with the Microsoft way at work, and unfortunately his
choice of development platform is Windows, and he would rather write CMD scripts then use the industry
standard "make". I have crafted three Makefile's for RomWBW, and they work like this.

The three build folders for my makes are XSource, LSource, and WSource. All these folders contain in the
distribution is a Makefile and a bin folder with platform specific tools. You enter the proper folder for your
platform and say "make clean" and "make". it takes approximately 10 seconds on Windows, and about 1.2
on Linux, and about 2 on Mac OS X. The makefile coppies in needed source files form ../Source and converts
the end of line as appropriate for the platform tools. The all generated files end up in the *Source folder and
none show up in the Source folder, thereby leaving the Source folder pristine. Wayne continues to use his
build.cmd and .ps1 files for the Windows build, and I am constantly having to update the makefiles every time
he breaks things. I am ready to go back to one Makefile for all three platforms but I have core issue
disagreements with Dave Giles about how platform tools are handled. He wants each and every tool individually
installed by the builder on his system, then for the builds to find them in /usr/local/bin instead if in a local
bin folder in the distribution. Linux seems to be the issue, Mac OS X binaries seem portable, but there are so
many Linux distribs that it is hard to ship embedded linux platform tools and hope they are compatible with
whatever religiously affiliated Linux distrib a builder had attached to. I use Scientific Linux, which is in essence
Red Hat Enterprise Server.
 
I want to work things out with you and move forward optimally. Lets keep that dialogue alive. The things you
are saying to me make sense and I trust your perspective.


There is definitely work to do on that implementation in the IDE area because of the blocking in the driver is not contiguous.  Also as I had communicated, I am not in favor of the windowisms that have crept into the process.  I will help try to minimize them.  I will wait till you are ready to tackle CP/M 80 Plus and by then I may have some of the code cleaned up to help there.  I think we need to be careful in the implementation as with the direction of the boards, slave processors are supported so there has to be some notion of resource ownership to allow graceful handoff.  I am going to be working on getting CP/M 68K working on the 68K board as well as the 68360 board that Andrew and I are working on in the meantime.  That is my 1st priority and then do some recoding of the propIO to support greater than 80x25 screen.  Hopefully our schedules will intercept then and I can weigh in with my suggestions on coding for CP/M 80 Plus.  I still need to see if we can do this in a cross compile environment as the current implementation is tied to native assembler.  I think we can overcome that and need to do the same of the 1.4 version.  The current config file method being used needs to be implemented using things like Makefiles, machine dependent files and conditional assembly.  I still need to ponder more on how to do that in a scalable way.  There will probably be parallel streams of development in the interest of time as I don't want to hold things up - but maybe it might be worth some design discussions here before you jump into just porting the existing code base.

Dave

On Friday, January 25, 2013 5:14:45 PM UTC-6, douglas_goodall wrote:
Friends,

There is a project underway to port Wayne's RomWBW CP/M implementation
to the S-100
using John Monahan's S-100 boards. I am leading the software effort and
Tom Lafleur is
leading the hardware effort. Leonard Young is on-board as another
knowledgeable set of
eyes and brain pan to help the project stay on track. This port of
RomWBW has Wayne's
blessing.

The reason I am contacting you is to let you know that there will be an
operating system
available in the near future that has the same look and feel as the
RomWBW you are used
to on N8VEM platforms such as Zeta, SBC-v2, and N8.

I would like builders that are using or intending to use S-100 with
John's boards to let
me know who they are so I can gather information about their
configurations and desired
support from the new version.

My intention is to begin with CP/M-80 v2.2, and then move on to CP/M-80
Plus, and perhaps
MP/M-80 in time. I am open to other thoughts about this.

The more information I have about the builder's needs and wishes, the
closer I can come
to fulfilling them. I only know about half a dozen people using S-100
right now, and I know
there must be many more, and I believe my sample size isn't large enough
to represent the
views of the N8VEM/S100COMPUTERS.COM Community.

You may respond on-list or off-list.

Respectfully,

Douglas Goodall
--