mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-25 20:30:31 +00:00
ksp: map mode mostly works
This commit is contained in:
parent
403d69ba9d
commit
cc5550d16d
3
ksp/TODO
3
ksp/TODO
@ -5,3 +5,6 @@ auto-generated shape tabe for ship based on VAB choices
|
|||||||
more expressive kerbals
|
more expressive kerbals
|
||||||
atmospheric drag
|
atmospheric drag
|
||||||
support all four qudrants in space view
|
support all four qudrants in space view
|
||||||
|
deadly re-entry
|
||||||
|
remembering some history for map mode
|
||||||
|
some way of detecting we made orbit (perapsis/apoapsis calculations?)
|
||||||
|
27
ksp/ksp.bas
27
ksp/ksp.bas
@ -42,7 +42,7 @@
|
|||||||
4000 REM ** LOOP **
|
4000 REM ** LOOP **
|
||||||
4002 IF LN=0 GOTO 5032
|
4002 IF LN=0 GOTO 5032
|
||||||
4003 RR=RA-KR
|
4003 RR=RA-KR
|
||||||
4004 IF RR>1800 THEN GOTO 4012
|
4004 IF RR>1800 OR OM=1 THEN GOTO 4012
|
||||||
4005 HCOLOR=0:HPLOT 1,80+H TO 132,80+H:HPLOT 148,80+H TO 247,80+H
|
4005 HCOLOR=0:HPLOT 1,80+H TO 132,80+H:HPLOT 148,80+H TO 247,80+H
|
||||||
4010 H=RR/20:HCOLOR=1:HPLOT 1,80+H TO 132,80+H:HPLOT 148,80+H TO 247,80+H
|
4010 H=RR/20:HCOLOR=1:HPLOT 1,80+H TO 132,80+H:HPLOT 148,80+H TO 247,80+H
|
||||||
4012 IF RR<40000 AND CQ<>0 THEN GOSUB 7600
|
4012 IF RR<40000 AND CQ<>0 THEN GOSUB 7600
|
||||||
@ -71,12 +71,7 @@
|
|||||||
5040 PRINT "TIME: ";T,"STAGE: ";4-S;" ";AN$
|
5040 PRINT "TIME: ";T,"STAGE: ";4-S;" ";AN$
|
||||||
5045 PRINT "ALT: ";INT((RA-KR)/1000);"KM ";AN;" "
|
5045 PRINT "ALT: ";INT((RA-KR)/1000);"KM ";AN;" "
|
||||||
5060 PRINT "VEL: ";INT(V);"M/S","FUEL: ";INT(FL);"% "
|
5060 PRINT "VEL: ";INT(V);"M/S","FUEL: ";INT(FL);"% "
|
||||||
5080 REM PRINT "GRAVANGLE ";GA*180/3.14
|
5113 IF OM<>1 THEN XDRAW 1+((S-1)*2)+TR AT 140,80
|
||||||
5090 REM PRINT "X: ";RX;" Y: ";RY
|
|
||||||
5100 REM PRINT "VX: ";VX;" VY: ";VY
|
|
||||||
5110 REM PRINT "ANGLE: ";AN
|
|
||||||
5112 REM PRINT "AX: ";AX;"AY: ";AY
|
|
||||||
5113 XDRAW 1+((S-1)*2)+TR AT 140,80
|
|
||||||
5115 Q=PEEK(-16384):IF Q<128 THEN GOTO 6080
|
5115 Q=PEEK(-16384):IF Q<128 THEN GOTO 6080
|
||||||
6000 A$=CHR$(Q-128):POKE 49168,0
|
6000 A$=CHR$(Q-128):POKE 49168,0
|
||||||
6060 IF A$="Q" THEN END
|
6060 IF A$="Q" THEN END
|
||||||
@ -86,21 +81,23 @@
|
|||||||
6064 IF A$="Z" THEN TH=1
|
6064 IF A$="Z" THEN TH=1
|
||||||
6065 IF A$="V" THEN RA=RA+100
|
6065 IF A$="V" THEN RA=RA+100
|
||||||
6066 IF A$="X" THEN TH=0
|
6066 IF A$="X" THEN TH=0
|
||||||
|
6067 IF A$="M" THEN GOTO 6300
|
||||||
6068 IF A$=" " AND LN=1 THEN S=S-1:XX=PEEK(-16336)
|
6068 IF A$=" " AND LN=1 THEN S=S-1:XX=PEEK(-16336)
|
||||||
6069 IF A$=" " AND LN=0 THEN GOSUB 7500
|
6069 IF A$=" " AND LN=0 THEN GOSUB 7500
|
||||||
6070 IF A$="E" THEN GOSUB 8100
|
6070 IF A$="E" THEN GOSUB 8100
|
||||||
6073 IF R=64 THEN R=0:AN=0
|
6073 IF R=64 THEN R=0:AN=0
|
||||||
6074 IF R=-8 THEN R=56
|
6074 IF R=-8 THEN R=56
|
||||||
6075 IF S<0 THEN S=0
|
6075 IF S<1 THEN S=1
|
||||||
6080 ROT=R
|
6080 ROT=R
|
||||||
6090 XDRAW 1+((S-1)*2)+TR AT 140,80
|
6090 IF OM<>1 THEN XDRAW 1+((S-1)*2)+TR AT 140,80
|
||||||
|
6095 IF OM=1 THEN HX=INT(RX/25000)+140:HY=INT(-RY/25000)+85:HPLOT HX,HY
|
||||||
6118 T=T+1
|
6118 T=T+1
|
||||||
6200 GOTO 4000
|
6200 GOTO 4000
|
||||||
6500 REM ** ORBIT MODE **
|
6300 IF OM=1 GOTO 6400
|
||||||
6530 HX=INT(RX/25000)+140:HY=INT(-RY/25000)+85
|
6310 OM=1
|
||||||
6535 REM CHECK BOUNDS
|
6320 PRINT:PRINT CHR$(4);"BLOAD GLOBE.HGR,A$2000"
|
||||||
6540 REM HPLOT HX,HY
|
6330 GOTO 6095
|
||||||
6550 RETURN
|
6400 OM=0:CQ=-1:GOTO 4000
|
||||||
7200 DATA 6,0,14,0,42,0,77,0,113,0
|
7200 DATA 6,0,14,0,42,0,77,0,113,0
|
||||||
7201 DATA 156,0,200,0,219,36,36,44,44,44
|
7201 DATA 156,0,200,0,219,36,36,44,44,44
|
||||||
7202 DATA 53,53,53,54,54,54,54,63,63,45
|
7202 DATA 53,53,53,54,54,54,54,63,63,45
|
||||||
@ -146,7 +143,7 @@
|
|||||||
8000 REM *** CRASH ***
|
8000 REM *** CRASH ***
|
||||||
8010 SCALE=3
|
8010 SCALE=3
|
||||||
8015 GOSUB 8200
|
8015 GOSUB 8200
|
||||||
8020 FOR I=0 TO 64 STEP 8: ROT=I:XDRAW 1+(S*2)+TH AT 140,80: XX=PEEK(-16336):NEXT I
|
8020 FOR I=0 TO 64 STEP 8: ROT=I:XDRAW 1+((S-1)*2)+TH AT 140,80: XX=PEEK(-16336):NEXT I
|
||||||
8030 FOR I=1 TO 50
|
8030 FOR I=1 TO 50
|
||||||
8040 X=INT(RND(1)*80)+1:Y=INT(RND(1)*80)+1
|
8040 X=INT(RND(1)*80)+1:Y=INT(RND(1)*80)+1
|
||||||
8050 C=INT(RND(1)*7)+1:HCOLOR=C
|
8050 C=INT(RND(1)*7)+1:HCOLOR=C
|
||||||
|
Loading…
Reference in New Issue
Block a user