Steve Bjork TRS-80 Model 1 source code…

From “The Big List of TRS-80 Software” I found two early Steve Bjork programs. These appear to be the two programs that appeared on the People’s Software tape:

PeoplesSoftware-TRS80-Model1

The first is a Bio-Rhythm program listed as biortsb.bas (which I assume the “sb” at the end is Steve Bjork):

10 REM  BIO-RHYTHM ------ BY STEVE BJORK
20 DIMA(150)
30 FORX=1TO20
40 READA(X)
50 RESTORE
60 FORX=1TO20
70 READA(X)
80 NEXTX:A=0
90 FORX=9TO20
100 A=A+A(X):A(X+11)=A
110 NEXTX
120 CLS:PRINT" B I O - R H Y T H M"
130 PRINT:PRINT" BY STEVE BJORK":PRINT
140 INPUT"WHO ARE YOU";A$
150 INPUT"WHAT IS YOUR BIRTHDATE (M,D,Y)";M,D,Y
160 INPUT"AND THE DATE FOR CHART (M,Y)";B,C
170 Z=((C-Y)*365)-D-A(M+20)+A(B+20)+INT((C-Y)/4)
180 IF(Y/4=INT(Y/4))*(M<3) Z=Z+1
190 IF(C/4=INT(C/4))*(B>2) Z=Z+1
200 CLS
210 PRINT@960,""
220 FORX=1TO31
230 SET(17,X):SET(18,X):SET(49,X):SET(50,X):SET(81,X):SET(82,X)
240 SET(113,X):SET(114,X)
250 SET(33,X):SET(65,X):SET(97,X)
260 NEXTX
270 FORX=17TO114
280 SET(X,0):SET(X,32)
290 NEXTX
300 FORX=0TO30STEP5
310 SET(16,X):SET(19,X):SET(48,X):SET(51,X):SET(80,X):SET(83,X)
320 SET(112,X):SET(115,X)
330 NEXTX
340 FORX=5TO30STEP5
350 PRINT@INT(X/3)*64+3,X;:PRINT@INT(X/3)*64+58,X;:
360 NEXTX
370 PRINT@713,"LOW";:PRINT@729,"LOW";:PRINT@745,"LOW";
380 PRINT@720,"C";:PRINT@736,"C";:PRINT@752,"C"
390 PRINT@ 724,"HIGH";:PRINT@740,"HIGH";:PRINT@756,"HIGH"
400 PRINT@781,"PHYSICAL";
410 PRINT@796,"EMOTIONAL";
420 PRINT@813,"MENTAL";
430 PRINT@857,"NAME------------";A$
440 PRINT@921,"BIRTHDATE-------";M;"/";D;"/";Y
450 PRINT@985,"CHART DATE------";B;"/";C;
460 IF(C/4=INT(C/Y))*(B=2) A(10)=29
470 FORX=1TOA(B+8)
480 P=Z-INT(Z/23)*23:E=Z-INT(Z/28)*28:I=Z-INT(Z/33)*33
490 S=6.28319*(P/23)
500 GOSUB660
510 SET(INT(S*13)+34,X)
520 S=6.28319*(E/28)
530 GOSUB660
540 SET(INT(S*13)+66,X)
550 S=6.28319*(I/33)
560 GOSUB660
570 SET(INT(S*13)+98,X)
580 Z=Z+1
590 NEXTX:A(10)=28
600 PRINT@832,"FOR A NEW CHART";
610 PRINT@896,;"ENTER A '1'";
620 INPUTA
630 IFA=1GOTO140
640 CLS
650 STOP
660 T=S:U=S
670 FORW=1TO7STEP2
680 U=U*T*T
690 S=S-(U/A(W))+((U*T*T)/A(W+1))
700 U=U*T*T
710 NEXTW
720 RETURN
730 DATA6,120,5040,362880,39916800,6.22702E09
740 DATA1.30767E12,3.55687E14
750 DATA31,28,31,30,31,30,31,31,30,31,30,31

The second is a Perpetual Calendar program listed as percalsb.bas:

5  REM....PERPETUAL CALENDAR PROGRAM
6 REM....FOR RADIO SHACKS TRS-80
7 REM....BY STEVE BJORK
8 DIMA(150)
9 CLS:PRINT@400,"PERPETUAL CALENDER BY STEVE BJORK"
10 PRINT@ 448,"ENTER MONTH AND YEAR (MM,YY)";:INPUT M,Y
11 IF (M>12)+(M<1)THEN10
17 IF Y<100 THENY=Y+1900
18 RESTORE:FOR I=1 TO 12:READ V:NEXT I
19 FOR I=1 TO M:READ A$:NEXT I
20 B$=" ":L=0:IF INT(Y/4)<>(Y/4)THEN50
30 IF INT(Y/100)=(Y/100) THEN50
40 B$="LEAP-YEAR":L=1
50 T=INT((Y-1893)/4)
60 C=(Y-1893+T)/7:C=INT((C-INT(C))*7+.5)
90 RESTORE:FOR I=1 TO 12:READA(I):NEXTI:A(2)=A(2)+L
91 D=0:IF M=1 THEN 100
92 FOR I=1 TO M-1:D=D+A(I):NEXT I
100 D=(D+C)/7
110 D=INT((D-INT(D))*7+.5)
111 IF D=0THEND=7
120 CLS:PRINT@ 22,A$;" ";Y;" ";B$
150 T=0:FOR I=(D-2) TO 0 STEP-1:T=T+1:A(T+12)=(-I):NEXTI
160 P=1:FOR J=D TO 7:A(J+12)=P:P=P+1:NEXT J
164 RESTORE
165 W=0:FOR I=1 TO 12:READ X:NEXTI:FORI=1TO12:READB$:NEXTI
166 FOR J=8 TO 56 STEP 8:READ B$:PRINT@64+J,B$:NEXTJ
167 A$=" ":H=0:READ A,A$:IF A=0 THEN 170
168 IF INT(A)<>M THEN167
169 H=INT((A-INT(A))*100+.5)
170 FOR I=128 TO 832 STEP 128
180 P=0:FOR J=8 TO 56 STEP 8:S=I+J
190 P=P+1:Q=A(P+12)+(W*7)
191 Z=0:IF Q<10 THENZ=1
200 IF (Q<=0)+(Q>A(M))THEN220
210 PRINT@ S+Z,Q
211 IF H<>Q THEN 220
212 PRINT@ S+63,A$
220 NEXT J:W=W+1:NEXT I
270 END
1000 DATA31,28,31,30,31,30,31,31,30,31,30,31
1100 DATAJANUARY,FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST
1200 DATASEPTEMBER,OCTOBER,NOVEMBER,DECeMBER
1300 DATASUN,MON,TUE,WED,THU,FRI,SAT
1400 REM...HOLIDAYS (M.D)
1500 DATA1.01,NEW YR,12.25,XMAS,2.14,VAL,7.04, 4TH,4.01,FOOL
1510 DATA10.31,HAL'WN
1800 DATA0,END

I have so far been unable to locate additional information on People’s Software, but it was produced by:

  • computer information exchange, inc.
  • box 158
  • san luis rey ca 92068

Can you find more about them?

Until then…

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.