command prompt-like shell
File$ = "E:programsscriptpmlsav.txt"
If File Exist(file$) = 0 Then Make File "E:programsscriptpmlsav.txt"
Open To Read 1,file$
Read String 1,1$
Read byte 1,a#
Read byte 1,b#
Read string 1,filename$
Read string 1,break$
Read byte 1,leftelipse#
Read byte 1,topelipse#
Read byte 1,widthelipse#
Read byte 1,heightelipse#
Read byte 1,rcolourelipse#
Read byte 1,gcolourelipse#
Read byte 1,bcolourelipse#
Close File 1
0$=""
a$="write"
b$="drawline"
c$="nts"
d$="end"
e$="save"
f$="box"
g$="print"
h$="clear"
i$="windowed"
j$="dir"
k$="time"
l$="line"
m$="elipse"
n$="help"
o$="button"
p$="3doff"
q$="3don"
r$="open"
cheat1$="colecomfort"
3$="plus"
4$="minus"
5$="times"
6$="divide"
textsize#=10
break#=2
do
ink rgb(0,100,0),1
break#= break# + 20
SET CURSOR 1,break#
Print "command"
ink rgb(0,100,100),1
break#= break# + 20
SET CURSOR 1,break#
input 1$
ink rgb(0,100,0),1
break#= break# + 20
SET CURSOR 1,break#
if o$=1$
input a#
break#= break# + 20
SET CURSOR 1,break#
input b#
break#= break# + 20
SET CURSOR 1,break#
repeat
set cursor a#,b#
if mousex() > 100 and mousex() < 200 and mousey() > 100 and mousey() < 140
color = rgb(0,255,0)
if mouseclick() = 1
color = rgb(150,150,150)
print "bob"
endif
else
color = rgb(255,0,0)
endif
ink color, 0
box 100,100,200,140
until spacekey()
endif
if r$=1$ then print "open:_current_directoryfilename"
if r$=1$ then break#= break# + 20
if r$=1$ then SET CURSOR 1,break#
if r$=1$ then input filename$
if p$=1$ then break#= break# + 20
if p$=1$ then SET CURSOR 1,break#
if r$=1$ then EXECUTE FILE "filename$", "", "./", 1
if r$=1$ then end
if p$=1$ then backdrop off
if p$=1$ then break#= break# + 20
if p$=1$ then SET CURSOR 1,break#
if q$=1$ then backdrop off
if q$=1$ then break#= break# + 20
if q$=1$ then SET CURSOR 1,break#
if n$=1$ then ink rgb(100,100,0),1
if n$=1$ then print "help:_activated"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_these_are_working_commands"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_write:_lets_you_write_text"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_nts:_the_program_ignores_this_type_of_text"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_end:_ends_program"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_box:_creates_box"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_clear:_clears_the_screen"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_time:_tells_the_date_&_time"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_plus:_adds_two_numbers_together"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_minus:_subtracts_two_numbers"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_times:_multiplies_two_numbers_together"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_divide:_divides_two_numbers_together"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_elipse:_creates_an elipse"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_line:_creates_a_line"
if n$=1$ then break#= break# + 20
if n$=1$ then SET CURSOR 1,break#
if n$=1$ then print "help:_command:_open:_open's_a_file_in_the_current_dirrectory"
if n$=1$ then ink rgb(0,100,0),1
if m$=1$ then print "elipse:_coordinate_left"
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then input leftelipse#
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then print "elipse:_coordinate_top"
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then input topelipse#
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then Print "elipse:_red_colour"
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then input rcolourelipse#
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then Print "elipse:_green_colour"
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then input gcolourelipse#
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then Print "elipse:_blue_colour"
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then input bcolourelipse#
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then Print "elipse:_width"
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then input widthelipse#
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then Print "elipse:_height"
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then input heightelipse#
if m$=1$ then break#= break# + 20
if m$=1$ then SET CURSOR 1,break#
if m$=1$ then ink rgb(rcolour#,gcolour#,bcolour#),1
if m$=1$ then left=(leftelipse#)
if m$=1$ then top=(topelipse#)
if m$=1$ then ellipsewidth=(widthelipse#)
if m$=1$ then ellipseheight=(heightelipse#)
if m$=1$ then ellipse left,top,ellipsewidth,ellipseheight
if l$=1$ then print "line:_coordinate_left"
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then input left#
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then print "line:_coordinate_top"
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then input top#
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then Print "line:_red_colour"
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then input rcolour#
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then Print "line:_green_colour"
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then input gcolour#
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then Print "line:_blue_colour"
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then input bcolour#
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then Print "line:_dimmention:_right"
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then input sizer#
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then Print "line:_dimmention:_bottom"
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then input sizeb#
if l$=1$ then break#= break# + 20
if l$=1$ then SET CURSOR 1,break#
if l$=1$ then ink rgb(rcolour#,gcolour#,bcolour#),1
if l$=1$ then left=(left#)
if l$=1$ then top=(top#)
if l$=1$ then right=(right#)
if l$=1$ then bottom=(bottom#)
if l$=1$ then line left,top,right,bottom
if l$=1$ then ink rgb(0,100,0),1
if f$=1$ then print "box:_coordinate_left"
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then input left#
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then print "box:_coordinate_top"
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then input top#
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then Print "box:_red_colour"
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then input rcolour#
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then Print "box:_green_colour"
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then input gcolour#
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then Print "box:_blue_colour"
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then input bcolour#
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then Print "box:_width"
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then input sizer#
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then Print "box:_height"
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then input sizeb#
if f$=1$ then break#= break# + 20
if f$=1$ then SET CURSOR 1,break#
if f$=1$ then ink rgb(rcolour#,gcolour#,bcolour#),1
if f$=1$ then left=(left#)
if f$=1$ then top=(top#)
if f$=1$ then right=(left+sizer#)
if f$=1$ then bottom=(top+sizeb#)
if f$=1$ then box left,top,right,bottom
if f$=1$ then ink rgb(0,100,0),1
ink rgb(0,100,0),1
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_input"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then input 2$
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_coordinate_x"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then INPUT x#
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_coordinate_y"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then INPUT y#
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_size"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then input textsize#
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_colour:_red"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then INPUT colourr#
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_colour:_green"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then INPUT colourg#
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_colour:_blue"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then INPUT colourb#
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then print "text:_font"
if a$=1$ then break#= break# + 20
if a$=1$ then SET CURSOR 1,break#
if a$=1$ then INPUT font$
ink rgb(colourr#,colourg#,colourb#),1
set text size textsise#
set text font font$
set cursor x#,y#
text x#,y#, 2$
ink rgb(0,100,0),1
ink rgb(0,100,0),1
if j$=1$ then break#= break# + 20
if j$=1$ then SET CURSOR 1,break#
if j$=1$ then input Path$
if 3$=1$ then break#= break# + 20
if 3$=1$ then SET CURSOR 1,break#
if 3$=1$ then print "plus:_input_number_one"
if 3$=1$ then break#= break# + 20
if 3$=1$ then SET CURSOR 1,break#
if 3$=1$ then input numberone#
if 3$=1$ then break#= break# + 20
if 3$=1$ then SET CURSOR 1,break#
if 3$=1$ then print "plus:_input_number_two"
if 3$=1$ then break#= break# + 20
if 3$=1$ then SET CURSOR 1,break#
if 3$=1$ then input numbertwo#
if 3$=1$ then break#= break# + 20
if 3$=1$ then SET CURSOR 1,break#
if 3$=1$ then print "plus:_sanswer"
if 3$=1$ then break#= break# + 20
if 3$=1$ then SET CURSOR 1,break#
if 3$=1$ then print numberone# + numbertwo#
if 4$=1$ then break#= break# + 20
if 4$=1$ then SET CURSOR 1,break#
if 4$=1$ then print "minus:_input_number_one"
if 4$=1$ then break#= break# + 20
if 4$=1$ then SET CURSOR 1,break#
if 4$=1$ then input numberone#
if 4$=1$ then break#= break# + 20
if 4$=1$ then SET CURSOR 1,break#
if 4$=1$ then print "minus:_input_number_two"
if 4$=1$ then break#= break# + 20
if 4$=1$ then SET CURSOR 1,break#
if 4$=1$ then input numbertwo#
if 4$=1$ then break#= break# + 20
if 4$=1$ then SET CURSOR 1,break#
if 4$=1$ then print "minus:_answer"
if 4$=1$ then break#= break# + 20
if 4$=1$ then SET CURSOR 1,break#
if 4$=1$ then print numberone# - numbertwo#
if 5$=1$ then break#= break# + 20
if 5$=1$ then SET CURSOR 1,break#
if 5$=1$ then print "times_input_number_one"
if 5$=1$ then break#= break# + 20
if 5$=1$ then SET CURSOR 1,break#
if 5$=1$ then input numberone#
if 5$=1$ then break#= break# + 20
if 5$=1$ then SET CURSOR 1,break#
if 5$=1$ then print "times:_input_number_two"
if 5$=1$ then break#= break# + 20
if 5$=1$ then SET CURSOR 1,break#
if 5$=1$ then input numbertwo#
if 5$=1$ then break#= break# + 20
if 5$=1$ then SET CURSOR 1,break#
if 5$=1$ then print "times:_answer"
if 5$=1$ then break#= break# + 20
if 5$=1$ then SET CURSOR 1,break#
if 5$=1$ then print numberone# * numbertwo#
if 6$=1$ then break#= break# + 20
if 6$=1$ then SET CURSOR 1,break#
if 6$=1$ then print "divide:_input_number_one"
if 6$=1$ then break#= break# + 20
if 6$=1$ then SET CURSOR 1,break#
if 6$=1$ then input numberone#
if 6$=1$ then break#= break# + 20
if 6$=1$ then SET CURSOR 1,break#
if 6$=1$ then print "divide:_input_number_two"
if 6$=1$ then break#= break# + 20
if 6$=1$ then SET CURSOR 1,break#
if 6$=1$ then input numbertwo#
if 6$=1$ then break#= break# + 20
if 6$=1$ then SET CURSOR 1,break#
if 6$=1$ then print "divide:_answer"
if 6$=1$ then break#= break# + 20
if 6$=1$ then SET CURSOR 1,break#
if 6$=1$ then print numberone# / numbertwo#
if k$=1$ then break#= break# + 20
if k$=1$ then SET CURSOR 1,break#
if k$=1$ then print "time:_the _current_time"
if k$=1$ then print get date$();" ";get time$()
if c$=1$ then ink rgb(100,100,0),1
if c$=1$ then break#= break# + 20
if c$=1$ then SET CURSOR 1,break#
if c$=1$ then input notetoself$
if c$=1$ then ink rgb(0,100,0),1
if j$=1$
set dir Path$
dim item$(100)
items=1
repeat
if get file type()=0
item$(items)=get file name$()
items=items+1
endif
find next
until get file type()=-1
break#= break# + 20
SET CURSOR 1,break#
print "dir:_files"
for t=1 to items-1
break#= break# + 20
SET CURSOR 1,break#
print item$(t)
next t
endif
if h$=1$ then break# = 20
if h$=1$ then cls
if d$=1$ then print "end:_ready_to_end"
if d$=1$ then exit prompt "MESAGE 10", "your program has ended"
if d$=1$ then end
loop
hi