Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install Help #1

Open
pdr0663 opened this issue Jun 1, 2020 · 12 comments
Open

Install Help #1

pdr0663 opened this issue Jun 1, 2020 · 12 comments

Comments

@pdr0663
Copy link

pdr0663 commented Jun 1, 2020

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

@pdr0663
Copy link
Author

pdr0663 commented Jun 1, 2020

If on SIMH, how would I get the files onto a disk image? (Prefer RL02)

Paul

@pdr0663 pdr0663 closed this as completed Jun 1, 2020
@pdr0663 pdr0663 reopened this Jun 1, 2020
@pdr0663
Copy link
Author

pdr0663 commented Jun 1, 2020

Sorry, unintentionally closed...

@sergev
Copy link
Owner

sergev commented Jun 1, 2020

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

@pdr0663
Copy link
Author

pdr0663 commented Jun 1, 2020

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

@pdr0663
Copy link
Author

pdr0663 commented Jun 1, 2020

I tried to compile the source tools on a Raspbian machine but gcc complained about the -m32 command line option being unknown.

Paul

@pdr0663
Copy link
Author

pdr0663 commented Jun 2, 2020

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

@sergev
Copy link
Owner

sergev commented Jun 2, 2020

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 49ce64e. 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

@pdr0663
Copy link
Author

pdr0663 commented Jun 2, 2020

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");
^~~~~~

@pdr0663
Copy link
Author

pdr0663 commented Jun 2, 2020

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

@pdr0663
Copy link
Author

pdr0663 commented Jun 22, 2020

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

@ATroubleshooter
Copy link

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 :)

scale_2400

https://zen.yandex.ru/media/id/5ff5d16d775e3c312f57b377/kontroller-diskovoda-i-ide-vinchestera-smk512-dlia-bk-001001-ili-kto-takoi-mudovskoi-60484c1d04378d7ce519c860

@ATroubleshooter
Copy link

It's СМК-512 in russian, if you're going to look for it on avito or whatever.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants