console/main.bas

180 lines
4.7 KiB
QBasic
Raw Normal View History

2026-05-07 13:24:29 +02:00
dim shared user as string
dim txtin as string
do
cls
2026-06-15 13:27:33 +02:00
print "Oscorp web console v1.1"
2026-05-07 13:24:29 +02:00
input "login:",user
print "contacting login server."
sleep 1
print "failed"
select case user
case ""
print "Anonymous user login successful, restricted privileges applies."
case "root"
print "root has unrestricted privileges, be careful."
case else
print "user ";user;" login successful, restricted privileges applies."
end select
do
input ">",txtin
select case first(txtin)
case "cls"
cls
case "whoami"
print user
case "su"
user="root"
print "root has unrestricted privileges, be careful."
case "help"
print "help!"
case "time"
print time$
case "date"
print date$
case "dir","ls"
print "readme.txt matrix linker"
print "credits.txt news.txt contact.txt"
case "download"
if user="root" then
print "downloading is temporarily disabled."
else
print "insufficient privileges, user must be root."
end if
case "matrix"
matrix
case "linker"
linker
case "cat","type","read"
cat rest$(txtin)
case "exit"
exit do
case else
print "unknown command"
end select
_limit 30
loop
loop
sub cat(txty as string)
select case txty
case ""
print "please specify file to output"
case "news.txt"
print "Thursday May 7. 2026"
print "Web console went online, all seems well."
print "Updated contact.txt"
case "readme.txt"
if user="root" then
print "OSCORP INDUSTRIES - INTERNAL SYSTEMS"
print "DOCUMENT ID: OS-99-B-ROOT"
print "------------------------------------"
print "Welcome, Administrator."
print "Current Projects: Matrix, Linker, Stress simulator."
print "Status: All systems operational."
print ""
else
print "--- RESTRICTED ACCESS ---"
print "Property of Oscorp Industries."
print "Unauthorized access is a federal offense."
end if
case "contact.txt"
print ""
print "Contact"
print "-------"
print "If you have any questions you can"
print "contact us at";
color 9
print " noreply@oscorp.dk"
color 7
case "matrix"
print "matrix is a program"
case "linker"
print "linker is a program"
case else
print "file not found: "+txty
end select
end sub
sub linker
print
print "Links to tools hosted on osorp.dk internal servers"
print "--------------------------------------------------"
print "1. Bento PDF - Whatever you want to do to a pdf file, you can"
print "2. SearXNG - Private search through our server."
print "3. QBJS - Qbasic for the web."
print "4. DPAINT Deluxe Paint inspired web image editor"
print
print "choose you tool (Press 1-4, any other key to exit)"
while k$="":k$=inkey$:_limit 30:wend
print "Linker broken Please go to ";
select case k$
case "1"
print "https://bento.oscorp.dk"
case "2"
print "https://search.oscorp.dk"
case "3"
print "https://qbjs.oscorp.dk"
case "4"
print "https://oscorp.dk/dpaint"
end select
end sub
function first$(txt as string)
for i=1 to len(txt)
if mid$(txt,i,1)=" " then first$=left(txt,i-1):exit function
next
first$=txt
end function
function rest$(txt as string)
for i=1 to len(txt)
if mid$(txt,i,1)=" " then rest$=mid$(txt,i+1):exit function
next
rest$=""
end function
sub matrix
SCREEN _NEWIMAGE(800, 600, 32)
TYPE Drop
x AS INTEGER
y AS INTEGER
speed AS INTEGER
length AS INTEGER
END TYPE
CONST MAX_DROPS = 100
DIM columns(MAX_DROPS) AS Drop
DIM charWidth AS INTEGER: charWidth = 12
DIM charHeight AS INTEGER: charHeight = 16
FOR i = 1 TO MAX_DROPS
columns(i).x = INT(RND * _WIDTH)
columns(i).y = INT(RND * _HEIGHT) - _HEIGHT
columns(i).speed = INT(RND * 5) + 2
columns(i).length = INT(RND * 15) + 5
NEXT i
DO
_LIMIT 30
CLS
FOR i = 1 TO MAX_DROPS
FOR j = 0 TO columns(i).length
char$ = CHR$(INT(RND * 93) + 33)
IF j = 0 THEN
clr& = _RGB32(180, 255, 180)
ELSE
fade = 255 - (j * (255 / columns(i).length))
clr& = _RGB32(0, fade, 0)
END IF
color clr&
_PRINTSTRING (columns(i).x, columns(i).y - (j * charHeight)), char$
NEXT j
columns(i).y = columns(i).y + columns(i).speed
IF columns(i).y - (columns(i).length * charHeight) > _HEIGHT THEN
columns(i).y = 0
columns(i).x = INT(RND * _WIDTH)
columns(i).speed = INT(RND * 5) + 2
END IF
NEXT i
LOOP UNTIL INKEY$ <>""
screen 0
print
end sub