You are in my ATARI PORTFOLIO index.
The listings here are in PC-DOS 2.17 or in PBASIC4.
It is more about the idea then that there are really
innovating programs to be found, however I like to
loose myself in the JSD development and design, and
the rewriting of programs.
PBASIC4 is a GWBASIC lookalike higher programlanguage
especially developed for the ATARI PORTFOLIO, only a
lot smaller, 11907 BYTES to be exact.
If You have not an ATARI PORTFOLIO, then it is unwise
to load or run programs in PBASIC4.
Idem dito with the PC-DOS batches because in them could
be an unknown command. Thus take a good look first and
decide how to handle later.
This listing is the JSD rewritten DEMO, and shows what the ATARI
PORTFOLIO is able to in PBASIC4, in case You get irritated:
I have programmed the music.
Happely is that also done in JSD, thus deleting it is simple.
If You wish You can CLIPBOARD the following HTML direct from the screen.
This is made in the tradition of WYSIWYG, What You See Is What You Get.
START with locating Your cursor UNDER this rule until the STOP-sign.
1 IF DFREE<2000 THEN CLS:PRINT "NEED 2 KILOBYTE RAM MEMORY !!!":SYSTEM:REM "MELODEMO.PBS"
10 DIM A$(254):DIM B$(254):Z1=0
15 a=0:b=0:c=0:d=0:e=0:f=0:g=0
20 h=0:i=0:j=0:k=0:l=0:m=0:n=0:o=0
25 p=0:q=0:r=0:s=0:t=0:u=0:v=0:w=0
30 x=0:y=0:z=0:xx%=0:yy%=0:i%=0
40 ONE=700:TWO=800
45 hoofdscherm=100:teken=200
50 functie=300:pauzemuziek=600
55 groterok=1500:karakter=1530
60 nietleeg=1550:inhoud=1600
65 text=0:grap=1
80 start=1000
90 IF Z1=0 THEN GOTO start
99 END:REM:DIM
100 SCREEN text
110 BOX2(1,1)-(40,8)
120 PRINT"PORTFOLIO BASIC DEMO"
140 RETURN
199 END:REM:hoofdscherm
200 FOR xx%=x-1 TO x+1
210 FOR yy%=y-1 TO y+1
220 CHAR(xx%,yy%),A$
230 NEXT yy%,xx%
240 CHAR(x,y),A$,0
250 GOSUB pauzemuziek
260 RETURN
299 END:REM:teken
300 SCREEN grap
310 CHAR(8,47),"SINUS"
320 FOR x%=0 TO 239:y%=32-31*SIN(PI*x%/52):SOUND x%,4:PSET(x%,y%):SOUND ABS(y%-8),4:NEXT x%
400 CHAR(8,55),"COSINUS"
410 FOR x%=0 TO 239:y%=32-31*COS(PI*x%/77):SOUND x%,4:PSET(x%,y%):SOUND ABS(y%-8),4:NEXT x%
500 CHAR(8,63),"TANGENS"
510 FOR x%=0 TO 239:t=TAN(PI*x%/-89):t=ABS(t)
550 y%=32+t:SOUND (x%*.1),4:PSET(x%,y%):SOUND ABS(y%-8),4:NEXT x%
590 RETURN
599 END:REM:functie
600 RESTORE ONE:READ a,b
650 FOR c=0 TO a STEP b:READ d,e,f,g:FOR h=d TO e STEP f:i=RND(h):SOUND i,g:NEXT h,c:RETURN
699 END:REM:pauzemuziek
700 DATA 4,1,6,12,3,15,9,18,2,10,24,3,-1.4,15,18,6,-1.4,15
800 DATA 50,40,15,15,30,50,40,45,40,45,10,5,0
899 END:REM:DATA
1000 Z1=1
1050 GOSUB hoofdscherm:BOX2(2,3)-(39,5):PRINT "PORTABLE...";:GOSUB pauzemuziek:PRINT " , ... en PROGRAMMABLE !!!":GOSUB pauzemuziek
1100 GOSUB hoofdscherm:GOTOXY(2,4):PRINT "U staat verbaasd over wat Uw PF kan !":GOSUB pauzemuziek
1125 GOSUB hoofdscherm:GOTOXY(2,3):PRINT "BASIC en PORTFOLIO : CALCULEER !":GOSUB pauzemuziek
1150 GOTOXY(2,5):PRINT "1/3 =";1/3:GOTOXY(3,6):PRINT "_ý =";2^.5:GOTOXY(4,7):PRINT " =";PI:GOSUB pauzemuziek
1200 GOSUB functie
1250 FOR i=1 TO 240:y=RND(64):LINE(i,y)-(120,32):NEXT i
1275 x=106:y=35:A$="BASIC":GOSUB teken:x=8:y=55:A$="BASIC INTERPRETATOR VOOR DE PORTFOLIO":GOSUB teken
1300 DFSEG $B000:BSAVE "scherm1.pix",0,960:BSAVE "scherm2.pix",960,960:GOSUB pauzemuziek:SCREEN text:HELP
1350 GOSUB hoofdscherm:GOTOXY(2,3):PRINT "BASIC maakt gebruik van alle":GOTOXY(2,4):PRINT "geavanceerde file-management routines"
1375 GOTOXY(2,5):PRINT "van het PORTFOLIO operating system":GOSUB pauzemuziek
1400 GOSUB hoofdscherm::B$="c:\autoexec.bat":A$=FILE$(B$):IF LEN(A$)>0 THEN GOTO groterok
1450 GOTOXY(2,2):PRINT "geen ";B$:GOSUB pauzemuziek:GOTO inhoud
1500 BOX2(2,6)-(38,8):GOTOXY(3,7):PRINT "Inhoud van ";B$:GOSUB pauzemuziek:OPEN B$ FOR INPUT AS #1:CLS
1550 INPUT #1,A$:PRINT A$
1575 IF EOF(1)=0 THEN GOTO nietleeg
1590 CLOSE:GOSUB pauzemuziek
1600 GOSUB hoofdscherm:GOTOXY(2,3):PRINT "Dit staat op Uw actieve drive":GOSUB pauzemuziek:CLS:FILES:GOSUB pauzemuziek
1700 GOSUB hoofdscherm:GOTOXY(2,3):PRINT "Programmeurs zullen weten te":GOTOXY(2,4):PRINT "waarderen, dat BASIC net zo gemak-"
1750 GOTOXY(2,5):PRINT "kelijk met decimale, binaire en ook":GOTOXY(2,6):PRINT "hexadecimale waarden omgaat":GOSUB pauzemuziek
1800 GOSUB hoofdscherm:FOR x=0 TO 31:FOR i=0 TO 5:GOTOXY(2,2+i):PRINT x+i;" ";HEX$(x+i);" ";BIN$(x+i);:NEXT i,x:GOSUB pauzemuziek
1900 SCREEN grap:LINE(10,1)-(10,56):LINE(9,55)-(240,55):x=48:RESTORE TWO
1950 FOR i=11 TO 231 STEP 22:READ a:LINE(i,a)-(i,55):LINE(i+21,a)-(i+21,55):LINE(i,a)-(i+21,a):CHAR(i,64),CHR$(x):x=x+1:NEXT i
1975 x=20:y=10:A$="GRAFIEKEN":GOSUB teken
2000 DFSEG $AFC4:FOR i%=60 TO 960 STEP 60:BLOAD "scherm1.pix",i%:BLOAD "scherm2.pix",2880-i%:FRESH:NEXT i%
2100 FOR x=88 TO 152:FOR y=25 TO 39:PSET(x,y),1+POINT(x,y):NEXT y,x:GOSUB pauzemuziek
2150 FOR x=6 TO 231:FOR y=47 TO 56:PSET(x,y),1+POINT(x,y):NEXT y,x:GOSUB pauzemuziek
2200 GOSUB hoofdscherm:GOTOXY(2,2):PRINT "U kan BASIC al zeer snel":GOTOXY(2,3):PRINT "gebruiken voor het schrijven van Uw"
2250 GOTOXY(2,4):PRINT "eigen toepassing-programma's":GOSUB pauzemuziek:GOTOXY(2,6):PRINT "DE complete BASIC INTERPRETATOR"
2300 GOTOXY(2,7):PRINT" is 12 kB groot en werkt op elke PF":GOSUB pauzemuziek
2350 GOSUB hoofdscherm:GOTOXY(2,3):PRINT "Informatie over de aanschaf van":GOTOXY(2,5):PRINT "BASIC bij Uw ATARI PORTFOLIO dealer"
2400 GOTOXY(4,7):PRINT "of ATARI BENELUX : 03473 -77272.":GOTOXY(1,7):GOSUB pauzemuziek
2450 KILL "scherm1.pix":KILL "scherm2.pix":GOSUB pauzemuziek
2499 END
2500 END
save "melodemo":system:rem' file as melodemo.pbs and return to dos.
STOP ABOVE THIS RULE AND COPY THE TEXT TO YOUR CLIPBOARD.
The best advice I can give You now is: SAVE THE CLIPBOARD!