NEW
  PREFIX
AUTO 4,1
#!/bin/acos
;
; AcosX BBS Demo Program
;
; A mocked up BBS demonstration for KansasFest 2021!
;
; 2021-07-07, Brian J. Bernstein
;

; menu_step is for demo purposes; keeps track of the mocked next command (since we can't test commands yet
; we increment and instead test step to determine what to do next)
    menu_step = 0

connect
    print "CONNECTed to A2OSX BBS!"\\

login
    input "Username or 'NEW': " lo$
    print \"Welcome back, ";lo$;"!"\"You do not have any unread e-mail."\

    if lo$="" then print "fine, go away then":goto main_menu
; TODO: remove this comment when string test works
;    if lo$ <> "A2OSX" then print "Unknown user ID":goto login

welcome
    print \"Welcome to the a2osx BBS powered by AcosX!"\\
    print "-- NEWS -- 2021-07-21"\\"We're demoing the new ACOS-compatible language running on a2osx today!"\

main_menu
    print "[";date$; " - ";time$;"]"
    input "Main -> " a$

    if a$="?" then gosub showmenu_main:goto main_menu
    if a$="off" then goto logoff
    
; TODO: remove this comment when string test works
    if menu_step = 0 then goto sys_info
    if menu_step = 1 then goto read_news
    
    goto logoff

    print "Unknown command. Enter '?' for menu."
    goto main_menu

showmenu_main
    print "-=> Main Menu <=-"
    print " ?   - Help (this screen)"
    print " off - Logoff the system"
    print \
    return

logoff
    print "-=> Logoff <=-"\\
    print "Leaving so soon? Well, be sure to check out these other systems:"\
    print "     Dronefone       - 201-376-6337 - 300/1200/2400"
    print "     The Iron Castle - 201-822-0527 - 300/1200/2400"
    print "     What BBS?       - 201-464-9251 - 300/1200"
    print "     Northlink       - 201-376-0816 - 300/1200"

    print \"So long, and thanks for all the fish! *CLICK!*":goto end

sys_info
    print "-=> System Information <=-"\
    print "A2OSX BBS is running on:"\\"- 128k Apple //e"\"- 2 Disk ][ drives"\"- Uthernet II (no land line anymore!)"
    print "- CFFA 3000 32MB partition"\"- No Slot Clock"\\
    print "...and most important of all, it is written in the ACOS language and running on"\"a2osx!"\
    menu_step = 1
    goto main_menu

read_news
    print "-=> Latest News - 2021-07-21 <=-"\
    print "We are demoing AcosX at KansasFest 2021! Since the last KFest there have been"
    print "numerous improvements to the a2osx operating system, but we're excited to show"
    print "today how the ACOS language has been re-implemented to help revive the GBBS Pro"\"BBS legacy!"\
    print "GBBS Pro was one of the more popular BBS platforms back in the 1980s for"
    print "Apple II computers and one of the most powerful features of it was that the"
    print "entire system was written in a BASIC-like language called ACOS. While the"
    print "legacy ACOS interpreter has gone through many revisions over the years, nobody"
    print "has ever added support for the Uthernet interface or multiple simultaneous"
    print "users. Since a2osx is natively multi-user and supports the Uthernet card, it"
    print "was an excellent choice for the next generation of Apple II BBS. As well, the"
    print "goal is to be ACOS compatible so as to provide a platform to bring peoples'"
    print "old GBBS mods back to life!"\
    menu_step = 2
    goto main_menu


end
; do nothing after this line until we have a proper END or something like that
MAN
TEXT /MAKE/usr/share/examples/bbsdemo.s
