Open pdr0663 opened 4 years ago
If on SIMH, how would I get the files onto a disk image? (Prefer RL02)
Paul
Sorry, unintentionally closed...
Hi Paul, The bkunix binaries can be built on any Linux machine. I use Ubuntu 20.04, for example. I'm not sure you can run bkunix on SIMH though. You need one of BK emulators: https://en.wikipedia.org/wiki/Electronika_BK -Serge
Serge,
In the README for this archive, you said you'd uploaded the source before modifying it for the BK machine. I'd assumed then that this source is for the LSI-11 and not for the BK. If not, then do you have source for your modified LSX, to run on the LSI-11?
Paul
I tried to compile the source tools on a Raspbian machine but gcc complained about the -m32 command line option being unknown.
Paul
Is -m32 essential, or is it a convenience to imporve performance on you host development machine? If it's not required, I'll delete the option from the makefiles, and try again.
Paul
On Raspbian 32-bit machine the -m32 option is not needed. I'm not sure about 64-bit machine. It's not about performance. Cross-compiler does not work properly on 64-bit architecture for some reason. Something is wrong with field alignment in unions.
To get clean LSX source, just check out the very first commit 49ce64e174663ec660aa3e4551af52fb02506d5e. But these sources are not complete. It would be easier to modify the boot.S code and replace two drivers in src/sys/dev with proper versions for LSI-11.
--Serge
Serge,
I removed -m32 from the make files, and the compiler was happy to proceed. I edit the "while" statement on one source line (it wanted {} for an empty statement). After that, I get a very large number of errors. Seems like an include file or some implicit library is missing. See the (partial) make output below...
pi@raspberrypi3-dev:~/bkunix-master/cross-devel $ make -B
for i in cc pcc c2 ccom cpp as ld; do make DESTDIR=/usr/local -C $i; done
make[1]: Entering directory '/home/pi/bkunix-master/cross-devel/cc'
gcc -Werror -O -Wall -DDESTDIR=\"/usr/local\" -c -o pcc.o pcc.c
gcc -Werror -o pdp11-pcc pcc.o
gcc -Werror -O -Wall -DDESTDIR=\"/usr/local\" -c -o cc.o cc.c
gcc -Werror -o pdp11-cc cc.o
make[1]: Leaving directory '/home/pi/bkunix-master/cross-devel/cc'
make[1]: Entering directory '/home/pi/bkunix-master/cross-devel/pcc'
rm -f pcclocal.h
cat pcc.h localdefs.h | egrep '^#[ ](define[ ][ ]PCC(F|T|TM|OM)?|ifdef|ifndef|endif)' | sed -e 's/PCC[A-Z]*//' > pcclocal.h
rm -f pcctokens
cat pcc.h localdefs.h | egrep '^#[ ]define[ ][ ]PCC' | sed -e 's/^#[ ]define[ ][ ]PCC/%term /' > pcctokens
cat pcctokens ../mip/cgram.y > gram.in
byacc gram.in
byacc: 7 shift/reduce conflicts.
mv y.tab.c cgram.c
gcc -c -O -g -I. -I../mip -DONEPASS -DFIXSTRUCT="outstruct" -DFLEXNAMES cgram.c
gram.in: In function ‘bdty’:
gram.in:932:3: warning: implicit declaration of function ‘cerror’ [-Wimplicit-function-declaration]
cerror("bad bdty" );
^~
gram.in: At top level:
gram.in:938:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
dstash( n ) OFFSZ n;{ / put n into the dimension table /
^~
gram.in:945:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
savebc() {
^~
gram.in:956:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
resetbc(mask) int mask; {
^~~
gram.in:965:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
addcase(p) NODE p; { / add case to switch */
^~~
gram.in: In function ‘addcase’:
gram.in:969:3: warning: implicit declaration of function ‘uerror’ [-Wimplicit-function-declaration]
uerror("non-constant case expression");
^~
It would be easier to modify the boot.S code and replace two drivers in src/sys/dev with proper versions for LSI-11.
Great that sounds like the way to go. I'll need to get the compilation going properly first ;)
Paul
Sergev, I've seen one BK0010 machine on eBay. It includes the computer and a power supply. There are plenty more on Avito.
What additional hardware is needed to implement LSX on this machine? Some kind of disk drive obviously... Is there an emulated drive?
Paul Riley
Sergev, I've seen one BK0010 machine on eBay. It includes the computer and a power supply. There are plenty more on Avito.
What additional hardware is needed to implement LSX on this machine? Some kind of disk drive obviously... Is there an emulated drive?
Paul Riley
With SMK-512 expansion board you'll be ok :)
It's СМК-512 in russian, if you're going to look for it on avito or whatever.
Firstly, thank you so much for sharing this.
I have a PDP-11/03, and I want to get your OS up and running on it. One question, the INSTALL instructions are clear enough. But what system should this be run on? I tried my Linux system and make failed... Should it be run on another PDP-11 system? I can install on a simulated (SimH) system if necessary...
Paul