• Please review our updated Terms and Rules here

PDP 11/45, Part 4

'dumpobj.c' is a very simple linker (or more properly, a file translator from .obj to .bin, as it will only link one file).
It is distributed with the macro11x tool set from SIMH. The makefile flow runs as follows:

macro11 reg-11-45a.mac -d md -d me -e bex -l reg-11-45a.lst -o reg-11-45a.obj
dumpobj reg-11-45a.obj reg-11-45a.bin > reg-11-45a.dmp

where the .dmp file is an ascii dump of what is in the object file, and the .bin is the absolute loader format .bin file.

Don

I have my own version of dumpobj written in perl (dumpobj.pl) that basically does what dumpobj.c does, but also a lot
more (ie, knows how to build M9312 PROM images, for example) and processes more .obj file record formats.

PClink11 may be a better alternative for most folks to go along with macro11x, but I was not aware of its existence and
as such have never used it.
 
Hi All;

Don, Thank You for Your Input, I will copy it and try it Exactly as You have it..

And Let You know how it goes..

No, Good, still produces the same output, of saying what it expects, but not what I am doing wrong..

I am going to delete Cygwin and re-Install..
I Re-named the cygwin file and took out the Desktop link..
And it it Installing a fresh copy now, I for now also told it to download binutils and gcc, I know there will be more required files..
After this is done I will delete the Old re-named file..

Bill, I can't fully answer Your Question, as what I got from the one file that I did was a.hex file and I need .bin files.. Maybe someone who has done this will have a better answer..

THANK YOU Marty
 
Last edited:
Something that has me curious. In Marty's post above (post 279) it looks like macro-11 is throwing a usage error right off the bat. In most cases you're not going to get any output after you get a usage abort. And the sample syntax looks like it wants the object file specified before one or more source files, whereas Marty has them in the opposite order. Some older assemblers are very fussy about file order regardless of what switches may or may not precede filenames. Then in Don's example (post 281) it looks like macro-11 will accept the files in a more relaxed order as long as the correct switches, like -o or -l, are given. So which is it in this case, and why is Marty getting the usage error?
 
Hi Marty,

There is an option in PDP11GUI that pops up a memory window after you assemble, and then you can just "Deposit all" directly from there to load onto your real machine to give things a try.

Another thing you might consider trying is just firing up one of the existing PDP-11 operating system disk images in simh. Then you could use the actual PDP-11 tool chains, and probably FTP or Kermit off the resulting bin file. I was doing this with RT11 to run MACRO on short programs before I got PDP11GUI going on my system (though for these short programs I was just looking at the resulting listing files to get binaries I could toggle in.)
 
Hi All;

DDS, I have the same type of Questions, why is it not working ??
At present I am going on the Assumption, that something is / was or got broke in my Cygwin and so that is why I am reloading it..
If, nothing else, that eliminates that possible cause (hopefully)..

Fritzm, Thank You for Your answer, it might come to that.. "" There is an option in PDP11GUI that pops up a memory window after you assemble, and then you can just "Deposit all" directly from there to load onto your real machine to give things a try. ""

And since I am used to how that works, the cygwin approach, I would like to stick with that..

THANK YOU Marty
 
If you have a file named cygwin1.dll in your local directory you should delete that ... it is ONLY for use if you don't have cygwin installed. If it is present AND you have a full CYGWIN installation, it will likely cause cygwin and/or programs to malfunction, as the dll will not be the same version.

I provide the tools with the cygwin1.dll included for those users that do NOT have CYGWIN installed. In that case you can run the tool from a WINDOWS CMD window, and the cygwin dll provides the necessary support code for the tool to run without full CYGWIN present.

If you have a full cygwin environment, then you MUST (not just SHOULD) delete the cygwin1.dll included with the tools, and use the cygwin1.dll that is part of your cygwin installation (it will be found thru the PATH variable), so it it consistent.

Don
 
Hi All;

Don, Thank You for the Information..
At present I am in the middle of doing the download, but afterward I will check into this,
Yes in the old System, I think I did copy it over, thinking it was needed..

Fritzm, Have You had time to work on getting any of Your remaining files to work ??
OR,
Is it only a Weekend thing, when You have time to devote to Your 11/45 Project ??

THANK YOU Marty
 
Last edited:
Hi Marty -- mostly just have time on weekends!

Put up a blog post late last night at fritzm.github.io with the latest progress. I am currently working through CKBME0 (11/45 traps test) -- there seems to be an issue on my CPU right now with software interrupts and the WAIT instruction. Next step for me I think is to try and pull out a snippet of code and see if I can simplify the repro case, then I'll have a go at reading the microcode flows around PIRQ and WAIT in prep for stepping through. Might have a little time to work on it late tonight after work.
 
Hi All;

Fritzm, "" mostly just have time on weekends! ""

OK !! Just wondering..

"" Put up a blog post late last night at fritzm.github.io with the latest progress. I am currently working through CKBME0 (11/45 traps test) ""

I check Your Blog on a Daily basis, NOW that I know about it.. Especially for any Updates..

"" Next step for me I think is to try and pull out a snippet of code ""

That basically is what I did when I copied out the Register Test code from the PDF file..
I copied out a section or so at a time and got it to run, before typing in the next section of code..
As, much of the text in the files was hard to read..

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

I got it to WORK !!! Under Cygwin macro11, And Dumpobj works !!
I am back In Business.. Now, I can work on Stack Limit and States..

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

THANK YOU Marty
 
Last edited:
Glad to hear! Nothing like forward progress. Onward and upward!

dumpobj as included with the macro11 distribution is a very simple pseudo-linker to read records out of .obj files, does the bare minimum of relocation support, and outputs a .bin absolute loader image. It can't combine multiple .obj files (or even multiple .csects in one file) to an image. I does only very simple additive relocation to support generating the image. So no fancy stuff, but it does work ok for test programs in a single macro11 source file.

Don
 
Hi All;

Thank You, Don for Your Help and Support..

I was Running out of options of what was the cause of the Trouble..
Something must have Broke in my other copy of Cygwin..
Once I get another Serial Board working (M7800 or M7856), I can try to do TU58 again, Which would be a Serious (again) step for me..

Now I can Sleep and so can You..

THANK YOU Marty
 
Not to be too pushy about PDPGUI, but the big advantage is that is has a suite of tools that work together. I was able to use it to disassemble the one diagnostic well enough, I would think that there is a good assembler there, too. If may be one of you could send me your spare 11/45.... ha ha. Wish I could be of more help. I just wanted really to say that I became of PDPGUI believer after working through the learning curve as it related to my 11/40.

Good luck with your project.
 
Hi All;

Bill, Thank You for Your Insight and help..

"" Not to be too pushy about PDPGUI, but the big advantage is that is has a suite of tools that work together. I was able to use it to disassemble the one diagnostic well enough, I would think that there is a good assembler there, too. If may be one of you could send me your spare 11/45.... ha ha. Wish I could be of more help. I just wanted really to say that I became of PDPGUI believer after working through the learning curve as it related to my 11/40. ""

It's NOT that I am Not a PDPGUI Believer, I have become one, and if You notice, That is how I Now do my Downloads..
But, at present the Learning curve is very steep for me Learning to use it..
And I did try to use It's Disassembler, but it didn't work for me .. Most likely it was operator error and not understand all of the what's and hows..
And at present for me since I am not a software person, when I have a program fail, and the listing is one version and the code that I am running is a different version..
I do not have the wherewithal to get into the code and figure out, where it is really pointing to and to know what the problem really is.. For me it is easier to type in the code from the listing and get that working and then when it shows an error, and If I can't discern what that means, I can ask for help..
As for instance, my Register Test code, I typed it up and had to get some help when either typing mistake or reading mistake..
Others with more knowledge like Don pointed out what my Mistakes were.. And so Now I have a fully functional Register Test program the Mostly agree's with the Listing and I am more than GLAD to Share it with anyone who wants it..
I would be more than Happy to give it to You Bill even though You don't have an 11/45, just to get it out and on the Web where someone who might need it can get it..

So for Now, I plan on typing in the Stack Limit program from it's PDF and then the States program from it's PDF and then if Fritzm, is still having trouble with His Traps Trapping program I will type that in next.. But, If Fritzm, is really having trouble or get's stuck, this might move up in Priority..
And when all of these are Done.. I will be more than Glad to give them to anyone who can put them out there on the WEB for other's who need them to use..

I have typed out T0 thru T2 of the Stack Limit Register Test Program, I have Assembled it, and I am going to copy it to my other PC and with PDPGUI send it to my 11/45 for a first test of the Program..

THANK YOU Marty
 
Last edited:
Hi Marty,

I'm doing okay so far with the traps program. PDP11GUI disassembler/assembler/loader is working okay for me, which helps. Please don't transcribe the whole traps test on my behalf -- it is LONG, and the listing print quality is really horrible! It looks to have been printed out on a very dirty ASR-33 that fell down a flight of stairs or something...

Played around with it a little more last night -- the test that is failing on my machine right now is on page 27 of the listing PDF, starting at address 013560 in the listing (slightly different address in the available binary) commented "CHECK THAT 'T' BIT DOES NOT TRAP OUT OF WAIT". Its a complicated little test with chained interrupt handlers for both serial and breakpoint. Sometimes (not every time, maybe 50% failure rate) my machine will sit on the WAIT instruction in this test, as if the serial xmit interrupt that is supposed to wake it from that point never arrives. Maybe when I get back to it tonight I'll try running off the maintenance RC clock -- if the test passes consistently at a slower clock then I'll know I'm looking for a timing race.

My "states" test is failing as well, but I won't even start looking at that until I figure out the current problems with "traps".
 
Marty,

Glad to see you are operational again (and getting sleep now :))!

I didn't realise you were hand-typing the diagnostics in from a 'listing'... I think that is dedication above and beyond the call of duty! I think this will significantly help out with testing 11/45 machines - and yes, I will be interested in a copy of your 'consistent' diagnostics when I am ready for them. Well done Marty!

I am going to have to catch up with you guys shortly (I still haven't got my mains cable yet for my power supply units)... If I can retire - I could spend more time on my hobby of course...

Dave
 
Hi All;

Fritzm, Thank You for the Encouragement..

"" Please don't transcribe the whole traps test on my behalf -- it is LONG, and the listing print quality is really horrible! ""

OK , You are going to get for now no argument from me..

"" It looks to have been printed out on a very dirty ASR-33 that fell down a flight of stairs or something... ""

I have the same Problem with the Stack Limit Test..

I Disassembled the Stack Limit Test as is given in the Binary to compare it with the Listing, and once You get a couple lines past Start, it isn't the same at all..

It took me awhile to figure out which .commands (.ABS, .ASEC, etc..) I needed to use to get my code to match what was in the listing..
If I start it at '200, it Traps at '10, BUT, if I start it at '1010 the beginning of the program it seems to run..
I am still working out where to make it jump to END to Print the " * " ..

I have Most of the Stack Limit Program typed in, I am on the last page, (with comments, since it fails my machine as far as I can tell), I will still need to assemble it and compare results with the PDF listing.. I finished typing it out and the code matches the Listing..
Before making any more .bin files for it..
Then I will release it for someone to try it out and tell me if it fails in their machine as well..

"" My "states" test is failing as well, but I won't even start looking at that until I figure out the current problems with "traps". ""

Yes, I feel the same way, I need to get Stack Limit working first, then we can Work on States together..

I have started to look at the States PDF, and next I will Download it to the other PC and see whether they are reasonably close or similar between the Listing and the .bin code file..

I took a look and Basically they are the same, before 1000 Octal it has what other programs have, programmed halts, and after the end of the Printed code there is some more code..
But, in between these two points it looks like it maybe the same, at least where I've checked.. When it failed on my machine the code in my machine matched the listed code.. So, there is hope for this, I may have to use programmed jumps from a certain point to the END where it will print a " * "..
Where I can ever so slowly work my way down the code, seeing / watching what passes and where it fails for me..
At least that is the plan..


Dave, as always Thank You for Your Encouragement..

"" I didn't realise you were hand-typing the diagnostics in from a 'listing'... I think that is dedication above and beyond the call of duty! I think this will significantly help out with testing 11/45 machines - and yes, I will be interested in a copy of your 'consistent' diagnostics when I am ready for them. Well done Marty! ""

I don't know of any other way to Pass some of the Diagnostics..
It passes my Version of the Register Test, But fails on the binary file one, I did modify it where mine had been modified to make mine run..
But, something else isn't right..

"" I am going to have to catch up with you guys shortly (I still haven't got my mains cable yet for my power supply units)... ""
Maybe it would have been faster if You made them yourself or so it would seem..
But, I know that when waiting for something that time can go so SLOOOOOOOOOOOOOOOOOOOOOOOW..

"" If I can retire - I could spend more time on my hobby of course... ""

Yes, But, living in a Cave with No Power and a large 11/45, may NOT cut it..

Dave, I sent You the Mac and Bin files for the PDP 11/45 Register Test Program..
I also have sent You the files for the Stack Limit Test Program, I can't say that it is any good, but it's done and Typed out..

If anyone Else wants a copy of these two Programs, I will be glad to send them to You..

I am going to start with the Circuitry for the Trap and Control Board, at present page 5 of the Schematic, and I will be copying into one of my noteBooks the pinout names, like I have done on some of the other boards..


THANK YOU Marty
 
Last edited:
Thanks for your tests Marty.

Just been informed by my cable supplier that they don't actually have my cable in stock... They will have some in next week(ish)...

Dave
 
Hi All;

Dave, Thanks for the Update..

"" Thanks for your tests Marty. ""
No Problem..

"" Just been informed by my cable supplier that they don't actually have my cable in stock... They will have some in next week(ish)... ""

Having a machine that is about 40 Years Old, I am surprised that they would have anything at all, Now if it is the wire that would be needed to Make the Cables, and / or the Ends, That is a little more UnderStandable..
Good Luck on the Cable Building Process..

On some of the Older Tests, it has '000207 for the bell, instead of '000007..

I am going to work on getting the States Program Typed up, it's huge..
My plan is to type in a section at a time and try it out.. Once something hangs I'LL know it..

THANK YOU Marty
 
Last edited:
Back
Top