• Please review our updated Terms and Rules here

New Kaypro 4 game "Dungeons of Skeleton King" from Olipix.

The game will only work on Kaypro computers with graphic features (post 84). While making my videos about the Kaypro systems (www.youtube.com/c/Olipix/), I noticed that some Kaypros had graphical possibilities, but almost none games were using them. So I decided to program my own game to showcase those features.

As far as I know, all of the Kaypros other than the very earliest, possibly only the roman-numeral II, used the same universal motherboard, just with more or less of it populated.

I don't know if my Kaypro Arabic-numeral 2 has graphics characters or not, but if it does not, I assume it's probably just a matter of changing out a character rom to add it? It most definitely uses the same universal board as the Arabic-numeral 4.
 
As far as I know, all of the Kaypros other than the very earliest, possibly only the roman-numeral II, used the same universal motherboard, just with more or less of it populated.

I don't know if my Kaypro Arabic-numeral 2 has graphics characters or not, but if it does not, I assume it's probably just a matter of changing out a character rom to add it? It most definitely uses the same universal board as the Arabic-numeral 4.

Yeah, as I understand it (please correct if I'm wrong) the model IV does not have the graphics capabilities as the model 4-84 etc. Always disliked the Kaypro model numbering system. I sold off my Kaypro hardware after I restored it (mostly). I did have a pesky floppy drive that would read disks when it felt like it. LOL Emulators are just fine with me.
 
Last edited:
I'm going through the code now.
I'm noticing a bunch of issues with the basic code.

there are a few duplicate line numbers.
looks like Monster X and Y have been transposed in a lot of places, Rather then MX and MY you have XM and YM where that array is not declared since it seems to be looking for MX and MY.

examples of transposed monster variable

1760 IF XM(E)=XH AND YM(E)=YH THEN GOTO 1780
5210 IX=0:IY=0:TM=P(XM(IM),YM(IM))


example of doubled line numbers
6355 IF LV=LX AND (P(XF,YF)=7 OR P(XF,YF)=8) THEN XH=XF:YH=YF:GOSUB 1700
6355 IF P(XF,YF)=9 THEN GOSUB 1500:GR$=GB$:GOTO 6380

i would recommend moving all Functions and array declarations to the start of the program many basic versions do not like to declare that space later and want it up front.

having a gosub to initialize is not good practice, best is get that all out of the way as housekeeping upfront in the first 100 lines.

i'm still working through it.
 
Wow this is cool. I just acquired, repaired and restored a KayPro 4 and earlier today stumbled on the KayPro 4 addendum and realized it had graphics capabilities and then just stumbled on this page and this game. How cool. I’ll be downloading and sending it through Kermit to the Wimodem connected to the Kaypro and give it a try :)
 
I'm going through the code now.
I'm noticing a bunch of issues with the basic code.

there are a few duplicate line numbers.
looks like Monster X and Y have been transposed in a lot of places, Rather then MX and MY you have XM and YM where that array is not declared since it seems to be looking for MX and MY.

examples of transposed monster variable

1760 IF XM(E)=XH AND YM(E)=YH THEN GOTO 1780
5210 IX=0:IY=0:TM=P(XM(IM),YM(IM))
In some Basics (probably all M$ Basic versions) you can get away with not declaring but still using array variables assuming you keep the index below 10. There would be no error if used like this. My guess is XM(), MX(), YM() and MY() are separate arrays.

In lines 6000-6090 MX and MY are (also) used as normal variables which is also quite confusing.

example of doubled line numbers
6355 IF LV=LX AND (P(XF,YF)=7 OR P(XF,YF)=8) THEN XH=XF:YH=YF:GOSUB 1700
6355 IF P(XF,YF)=9 THEN GOSUB 1500:GR$=GB$:GOTO 6380

Question is: which one the real line 6355 :)
 
i stopped playing around with the source code over a year ago, in 2024. OP never returned messages.
the basic code is horribly broken. i can't try the binary since it is for a different machine, kaypro.

it looked to me like CHATGPT had written the basic code because much of it is not something a person would do.
i played around with the code under Mbasic and GW-basic. i made a lot of corrections and got it to fire up further down each time but eventually i could see it was just a mess.

many of the variable names in the code are incorrectly labeled it starts addressing arrays that do not exist because the names start to get mixed up and spelled incorrectly which is why i suspected it was some A.I. exercise or some horribly corrupted upload.

this has all been sitting here since :
 
Back
Top