Martin,
Thank you for the additional insight. The diagnostics is an interesting
thought. I will run that tomorrow in SIMH and see what happens.
Given that I can run things like RSX11M and XXDP in it, on the 11/23 CPU I
would expect it to work fine.
I am fully expecting that I am doing something wrong given that I'm just
beginning to learn Macro11.
-Peter
On Thu, Oct 30, 2025 at 5:23 PM Martin Bishop <
mjd.bishop(a)emeritus-solutions.com> wrote:
The following is what happens:
PDP-11 simulator Open SIMH V4.1-0 Current git commit id: 29d39002
sim> set cpu 11/23
sim> load test.bin
sim> g 14000
HALT instruction, PC: 005271 (HALT)
sim>
<< /extract>>
the PC of 5271 is interesting in its own right …
- it is illegal (an odd address instruction fetch), should trap to 4 and
halt the machine
- how simh presents and responds to this condition is beyond my ken ..
Also, if there was an illegal address abort, there should be PC/PS info at
0/2
And, inspection of the SP and the bottom of the stack is always worthwhile
If the SP is ~17776 then something has overwritten the vectors, the 11/45
and up have hardware bottom of stack protection (amber trap and red abort
iirc)
Additionally, does your instance of simh execute the basic (11/20)
diagnostics correctly ?
To recollection they are simple executables : start -> loop
Utilities often have multiple executables concatenated on a single tape:
eg zero memory, then load and go; or load bootstrap, load software iaw
offset indicated by switches and then go.
Note that early vintage utilities / MainDECs often read the console
switches for "parameters"
HtH Martin
*From:* Peter Ekstrom <epekstrom(a)gmail.com>
*Sent:* 30 October 2025 18:43
*To:* General Discussion: On-Topic and Off-Topic Posts <
cctalk(a)classiccmp.org>
*Cc:* Martin Bishop <mjd.bishop(a)emeritus-solutions.com>
*Subject:* Re: [cctalk] Re: Looking for a bootloader
If I single-step, it doesn't seem to happen. But I have been playing
around with my test program and I added a loop in the beginning that clears
0-377.
That loop uses a bne instruction which seems to work fine. When I reach a
br or jmp instruction, the program fails. I saw in the opcode test for
macro11
in the simtools package, the br instruction is tested with 'br .' so I
used that in my program and it failed too.
Now I really need to try this on my hardware 11/23 tonight.....
-Peter
On Thu, Oct 30, 2025 at 1:03 PM Martin Bishop via cctalk <
cctalk(a)classiccmp.org> wrote:
I would verify that what you intended to load has been correctly loaded,
by displaying / dumping 1400 et seq.
If that is good, I would then instruction step to observe where execution
leads.
It may also be necessary to clear the processor's state and maybe issue a
bus init - however, the simulator startup probably obliges.
Martin
PS FWIW all the vectors and traps (0 to 400 in big handfulls) are
uninitialised (by you), so any of those could take you to exciting places -
eg 5271
-----Original Message-----
From: Peter Ekstrom via cctalk <cctalk(a)classiccmp.org>
Sent: 30 October 2025 14:40
To: General Discussion: On-Topic and Off-Topic Posts <
cctalk(a)classiccmp.org>
Cc: Peter Ekstrom <epekstrom(a)gmail.com>
Subject: [cctalk] Re: Looking for a bootloader
Anyone here familiar with programming the 11/23 (KDF11-A) in assembler,
bare metal?
I have been trying to get a very simple test program to run on it but it
keeps halting on an address outside of the program. Seems to always be the
same address which is why I am thinking I must be missing something. The
program runs fine on an 11/23+ or 11/70.
Below is the listing:
1 000000 .asect
2 014000 .=14000
3 014000 012706 002000 start: mov #2000,sp
4 014004 000240 loop: nop
5 014006 000776 br loop
6 .end
I have a hardware 11/23 but for convenience I have been testing on a SIMH
11/23 by
loading the binary from the simh prompt and then jumping to the start
address.
I have tested the same code on 11/23+ and 11/70 CPUs and it runs fine.
I am working in Linux and am using the following Macro11 cross-assembler:
macro11 - portable MACRO11 assembler for DEC PDP-11
Version 0.8 (07 Jul 2022)
Copyright 2001 Richard Krehbiel,
modified 2009 by Joerg Hoppe,
modified 2015-2017,2020-2021 by Olaf 'Rhialto' Seibert.
I then use the obj2bin.pl utility by Don North to convert from object
format to binary load format.
The following is what happens:
PDP-11 simulator Open SIMH V4.1-0 Current git commit id: 29d39002
sim> set cpu 11/23
sim> load test.bin
sim> g 14000
HALT instruction, PC: 005271 (HALT)
sim>
Am I missing some initialization parts or something? I have looked through
various manuals and the processor handbook for the LSI-11 but if it is in
there, I am missing it.
Any pointers would be greatly appreciated.
-Peter
On Tue, Oct 28, 2025 at 3:38 PM Peter Ekstrom <epekstrom(a)gmail.com> wrote:
Wayne, Warner, Glenn,
Thank you very much for your responses!
Wayne,
I took a look at the PDP11GUI files and it is quite complex. I setup
the GUI on a PC here and tried it against my PDP-11/23 but wasn't able
to get it to work.
Not sure what I did wrong but I am definitely keeping it, and will go
through that source a bit later. I'm sure I'll learn a lot from it.
Thank you for the tip!
Warner,
Right now I prefer assembler because I am trying to learn more about it.
But I glanced at the BSD loader in C and find it quite interesting. I
am going to go though that too a bit later. Thank you for this tip as
well!
Glen,
I did look at the sources you mentioned and they were a bit more
bite-sized. So I have tinkered with it and am actually able to use it
to boot an 11/23 in SIMH using that code. I have also cobbled together
a little boot menu and incorporated this loader there. Thank you for
those pointers!
Thank you all!
-Peter
On Tue, Oct 28, 2025 at 6:38 AM Glen Slick via cctalk <
cctalk(a)classiccmp.org> wrote:
(DU) MSCP UDA50(RAxx) disk:
https://ak6dn.github.io/PDP-11/M9312/
https://ak6dn.github.io/PDP-11/M9312/23-767A9/23-767A9.mac
https://ak6dn.github.io/PDP-11/M9312/23-767A9/23-767A9.lst
On Mon, Oct 27, 2025, 4:48 PM Wayne S via cctalk
<cctalk(a)classiccmp.org>
wrote:
Maybe look at pdp11gui ?
I think it downloads a boot loader so the code may be there.
<https://retrocmp.com/tools/pdp11gui>
PDP11GUI<https://retrocmp.com/tools/pdp11gui>
retrocmp.com<https://retrocmp.com/tools/pdp11gui>
[
favicon.ico]<https://retrocmp.com/tools/pdp11gui>
Sent from my iPhone
On Oct 27, 2025, at 15:58, Peter Ekstrom via cctalk <
cctalk(a)classiccmp.org>
wrote:
I am looking for the assembler listing for a bootloader for
booting
from
MSCP disks like RD-disks.
Google has not been very helpful and my assembler knowledge is not
enough
for me to write one from scratch. Does anyone
have one they can share?
- Peter