[sebhc] Re-creating actual floppies from archive

Robin England robin.england at dial.pipex.com
Fri Mar 17 10:45:29 CST 2006

Dwight, many thanks for your suggestions. The one about the TX/RX lines
being swapped on the header to the serial card is an interesting one. I have
got an RS232 light box somewhere, so I'll dig it out and have a look.
Incidentally yes I was pressing B with return, then shift-reset and then
entering and starting the 50 or so bytes of boot code from location 43000
and the DOS program was not responding with the command menu or an error, so
I guess it never got a ? back from the H89.

I'll try a few things out and will let you know how I get on. Hope your
weekend in the mountains goes well, cheers Robin.

----- Original Message ----- 
From: "Dwight Elvey" <dwight.elvey at amd.com>
To: <sebhc at sebhc.org>
Sent: Friday, March 17, 2006 1:20 AM
Subject: Re: [sebhc] Re-creating actual floppies from archive

> >From: "Robin England" <robin.england at dial.pipex.com>
> >
> >Hi Dwight
> >
> >Thanks for your comments. Well I've tried it but cannot get it to work.
> >followed the instructions to the letter, but can you clarify a couple of
> >points for me? First, when you initially turn on the H/Z89 and press B
> >no disk in the drive, I assume that it *is* necessary to press enter at
> >stage to actually start the boot attempt in order that the BIOS variables
> >are initialised? Secondly, what should the DOS utility H89TRANS respond
> >after you've pressed L and it has successfully sent the loader (e.g.
> >the command prompt re-appear?).
> I assume that after doing the B ( and yes, on some machines you need
> the return. I don't think it is need on the old H89's ) you then
> enter the 50 or so bytes from the monitor and started that program?
> Note that you need to use the reset button and not cycle the power
> to restart after the B command ( I had another fellow do this.
> See my note at the end of the post. I took forever for me to
> get him to tell me what he was doing. ).
> >
> >I'm finding that when I start H89TRANS and select the correct COM port
> >(COM1) I get the command menu. Then I press L (obviously with cable
> >connected and H/Z89 running the loader code) and it just sits there. As
> >loader seems to be only about 800 bytes I'd expect it to complete fairly
> >quickly at 9600 baud, but it does nothing. I can exit the DOS program
> >ESC, so the DOS PC hasn't hung.
> It shouldn't hang, it should return with the menu. ( 686 bytes to be exact
> or about 6 seconds ). I think you also need the H89LDR2.BIN file
> to be in the same directory you were in when you started H89TRANS.
> I think that error aborts back to DOS,though.
> >
> >I'm pretty sure that the problem is not with the RS232 side of things
> >etc). If I connect the internal serial cable (brown molex conn) to the
> >terminal board instead of the serial card, I can happily send characters
> >from the DOS PC (using Procomm) and receive them from the Z/89 keyboard,
> >which suggests all is OK there. If I keep this setup and run your
> >on the DOS PC, upon pressing L the loader is clearly sent because I can
> >it dumped to the H/Z89 screen.
> >
> >So, I believe that the problem I have is related to the internal H/Z89
> >serial configuration. On my serial card, the LP port is labelled on the
> >silkscreen of the PCB as being the topmost connector (when viewed with
> >card as mounted normally). However I have tried both the other serial
> >without success. I have also looped the CTS/RTS DSR/DTR handshaking lines
> >the Z/89 connector just in case the BIOS serial routines require the 8250
> >use these.
>  Then, I suspect that the top one is the right one but you may
> have to swap lines 2 and 3 or move the brown connector cable.
> As I recall, there are some jumpers to select this on the serial
> board but my memory is a little fuzzy here as to if that was
> the H8 or the H89 that had the jumpers to swap these lines.
> I do recall that the LP port had the 2 and 3 wires swapped
> relative to the normal serial port. Do you have a serial status
> light box? If not, you should have one.
> >
> >The serial card itself only has jumpers for IRQ setting. In the case of
> >my machines, the IRQ setting is OFF for all three 8250s. I'm not sure
> >other jumper / switch settings may be important? As far as I can tell,
> >DIP switch on the logic board is concerned only with the serial I/O
> >terminal board and logic board.
>  I don't use interrupts so that is correct, IRQ off. I'll check these
> this weekend.
> >
> >Also, is it possible that your code will not work on certain BIOS
> >I'm not sure but I think I've got MTR-90 on this machine (it supports the
> >(V)iew function).
>  There was an issue with the motor timeout that another had
> with a Z90. He was able to get it to work after I patched
> the code so I suspect it should work with your code. The first
> part of the code doesn't use any of the ROM code so it is
> unlikely that this is an issue. It isn't until it is actually
> reading and writing a disk that it uses anything in the ROMs.
> >
> >Have you any suggestions or perhaps some code that will dump input from
> >LP serial channel to the H/Z89 screen as a test? I will look at writing
> >myself if not, however my time with these machines has been more focussed
> >restoring the hardware itself and not the programming yet!
>  Look to make sure that the 2 and 3 signal lines are both driven.
> Use the top connector if that says LP. I suspect that that is the
> correct port if the board says LP. I won't be able to check my hardware
> setup until this weekend and won't be at a computer on the web
> until Monday ( the place is in the mountains ).
>  For the loader part, the boot strap you enter into the H89 just
> sets up the serial port and reads the bytes into memory. It writes
> the data starting at the high end of the code and then continues
> to write until it writes over the last byte of the loader. This
> causes the code to go forward to where there is some code that isn't
> position sensitive to reposition the actual code such that if there
> were any additional bytes ( up to 3 more or less bytes by 1 ) that the
> code was off, it'll put things in the right place.
>  Once the code is moved, it will then flush any remaining '0'
> from the serial ( NOP's )  and wait for the PC to send the first
> real command. The command ( as I recall ) an illegal command.
> As I recall, the H89 should then respond with a '?'. If so,
> the PC believes that the main code has been loaded and is
> ready to run.
>  Knowing this, you could setup your terminal program on the H89
> and wait until you think the loader is done loading. You can then
> reply with a '?' character sent from the H89 to the PC. It
> should then bring the menu back. This will tell you that the
> serial connection is working both ways for the PC program.
> I don't think that the terminal program should echo for
> the first part as the code is load but you might try it
> both ways, with and without echo ).
>  I'll try and look at my code on the PC tonight and see if
> I'm correct about the last handshake. I believe the assembly
> source code is in the release for the part that is transferred
> to the H89 from the PC as H89LDR2.ASM. After the code has been
> transferred, you can drop back to the monitor on the H89 and look
> to see what is in the location 043 141 (split octal) and on.
> This code should match what the assembly code would create
> at the location of MAININT in the assembly code. Bytes before
> that may not match exactly the posistion.
>  I don't recall if the H89LDR2.BIN file is stored byte reverse
> order or if I just reverse send it on the fly from the PC.
>  One other thing. When talking to others to trouble shoot, I
> find that they tend leave out important details about what
> they did( similar to me not having the 'CR' after the B ). In
> order to make sure I know just what you've done could you
> give me a complete step by step report of what you did?
> Please be complete or it will be a waste of both our time.
> Include an estimate of the delay in time between each step.
> This may seem trivial to you but otherwise I'm working blind.
>  This should give you enough to get things get started.
> Dwight
> >
> >Regards
> >Robin
> >
> >----- Original Message ----- 
> >From: "Dwight Elvey" <dwight.elvey at amd.com>
> >To: <sebhc at sebhc.org>
> >Sent: Thursday, March 16, 2006 12:36 AM
> >Subject: Re: [sebhc] Re-creating actual floppies from archive
> >
> >
> >> Hi
> >>  Do make sure and let me know how it works for you!!!
> >> Also, make sure and follow the steps. When I do it,
> >> I forget to do the first disk attempt after powering on.
> >> It just won't work because I depend on the bios to
> >> initialize the variables and the controller. I need
> >> to carefully read my own instructions.
> >> Later
> >> Dwight
> >>
> >>
> >> >From: "Dwight Elvey" <dwight.elvey at amd.com>
> >> >
> >> >Hi Robin
> >> > I don't recall which jumper setup was correct for the
> >> >serial but as I recall, things were just what was the
> >> >
> >> ---snip---
> >>
> >>
> --
> Delivered by the SEBHC Mailing List

Delivered by the SEBHC Mailing List

More information about the Sebhc mailing list