basic101 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.rspec +2 -0
- data/.simplecov +1 -0
- data/.yardopts +7 -0
- data/Changelog.md +3 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +75 -0
- data/LICENSE.md +9 -0
- data/README.md +193 -0
- data/Rakefile +14 -0
- data/VERSION +1 -0
- data/bin/basic101 +10 -0
- data/lib/basic101/abs_function.rb +19 -0
- data/lib/basic101/argument_checker.rb +61 -0
- data/lib/basic101/arguments.rb +32 -0
- data/lib/basic101/array_reference.rb +52 -0
- data/lib/basic101/asc_function.rb +17 -0
- data/lib/basic101/basic_array.rb +69 -0
- data/lib/basic101/basic_comparisons.rb +20 -0
- data/lib/basic101/basic_float.rb +48 -0
- data/lib/basic101/basic_integer.rb +48 -0
- data/lib/basic101/basic_math.rb +22 -0
- data/lib/basic101/basic_numeric.rb +96 -0
- data/lib/basic101/basic_object.rb +35 -0
- data/lib/basic101/basic_string.rb +85 -0
- data/lib/basic101/binary_operation.rb +32 -0
- data/lib/basic101/binary_operations.rb +26 -0
- data/lib/basic101/built_in_functions.rb +31 -0
- data/lib/basic101/chr_function.rb +17 -0
- data/lib/basic101/cos_function.rb +17 -0
- data/lib/basic101/data_statement.rb +24 -0
- data/lib/basic101/define_function_statement.rb +23 -0
- data/lib/basic101/dim_statement.rb +25 -0
- data/lib/basic101/else_statement.rb +22 -0
- data/lib/basic101/end_statement.rb +13 -0
- data/lib/basic101/endif_statement.rb +19 -0
- data/lib/basic101/errors.rb +50 -0
- data/lib/basic101/exp_function.rb +17 -0
- data/lib/basic101/for_stack.rb +48 -0
- data/lib/basic101/for_statement.rb +57 -0
- data/lib/basic101/function.rb +11 -0
- data/lib/basic101/function_call.rb +32 -0
- data/lib/basic101/function_identifier.rb +8 -0
- data/lib/basic101/functions.rb +39 -0
- data/lib/basic101/gosub_statement.rb +23 -0
- data/lib/basic101/goto_statement.rb +23 -0
- data/lib/basic101/identifier.rb +23 -0
- data/lib/basic101/identity.rb +18 -0
- data/lib/basic101/if_statement.rb +31 -0
- data/lib/basic101/input.rb +44 -0
- data/lib/basic101/input_reader.rb +55 -0
- data/lib/basic101/input_statement.rb +46 -0
- data/lib/basic101/int_function.rb +17 -0
- data/lib/basic101/left_function.rb +19 -0
- data/lib/basic101/len_function.rb +18 -0
- data/lib/basic101/let_statement.rb +24 -0
- data/lib/basic101/line.rb +32 -0
- data/lib/basic101/log_function.rb +17 -0
- data/lib/basic101/main.rb +24 -0
- data/lib/basic101/mid_function.rb +20 -0
- data/lib/basic101/negate_operation.rb +21 -0
- data/lib/basic101/next_statement.rb +34 -0
- data/lib/basic101/not_operation.rb +23 -0
- data/lib/basic101/null_prompt_delimeter.rb +12 -0
- data/lib/basic101/null_transcript.rb +20 -0
- data/lib/basic101/numeric_identifier.rb +16 -0
- data/lib/basic101/on_goto_statement.rb +29 -0
- data/lib/basic101/output.rb +73 -0
- data/lib/basic101/parser.rb +457 -0
- data/lib/basic101/power_operation.rb +24 -0
- data/lib/basic101/print_comma.rb +20 -0
- data/lib/basic101/print_semicolon.rb +19 -0
- data/lib/basic101/print_statement.rb +33 -0
- data/lib/basic101/program.rb +100 -0
- data/lib/basic101/program_counter.rb +52 -0
- data/lib/basic101/prompt_delimeter.rb +13 -0
- data/lib/basic101/randomize_statement.rb +13 -0
- data/lib/basic101/read_statement.rb +25 -0
- data/lib/basic101/reference.rb +25 -0
- data/lib/basic101/remark_statement.rb +12 -0
- data/lib/basic101/restore_statement.rb +23 -0
- data/lib/basic101/return_statement.rb +16 -0
- data/lib/basic101/right_function.rb +19 -0
- data/lib/basic101/rnd_function.rb +24 -0
- data/lib/basic101/runtime.rb +132 -0
- data/lib/basic101/scalar_reference.rb +19 -0
- data/lib/basic101/sgn_function.rb +17 -0
- data/lib/basic101/sin_function.rb +17 -0
- data/lib/basic101/sqr_function.rb +17 -0
- data/lib/basic101/statement.rb +36 -0
- data/lib/basic101/stop_statement.rb +14 -0
- data/lib/basic101/str_function.rb +16 -0
- data/lib/basic101/string_identifier.rb +16 -0
- data/lib/basic101/tab.rb +18 -0
- data/lib/basic101/tab_function.rb +17 -0
- data/lib/basic101/tan_function.rb +17 -0
- data/lib/basic101/transcript.rb +37 -0
- data/lib/basic101/transform.rb +264 -0
- data/lib/basic101/user_defined_function.rb +54 -0
- data/lib/basic101/val_function.rb +16 -0
- data/lib/basic101.rb +93 -0
- data/rake_tasks/default.rake +1 -0
- data/rake_tasks/integration.rake +8 -0
- data/rake_tasks/jeweler.rake +28 -0
- data/rake_tasks/spec.rake +8 -0
- data/rake_tasks/test.rake +2 -0
- data/rake_tasks/yard.rake +3 -0
- data/test/integration/arguments.rb +25 -0
- data/test/integration/errors.rb +7 -0
- data/test/integration/integration_test.rb +28 -0
- data/test/integration/main.rb +49 -0
- data/test/integration/output_file.rb +40 -0
- data/test/integration/test.rb +135 -0
- data/test/integration/tests/basic_computer_games/23-match.bas +64 -0
- data/test/integration/tests/basic_computer_games/23-match.input +1 -0
- data/test/integration/tests/basic_computer_games/23-match.output +29 -0
- data/test/integration/tests/basic_computer_games/3dplot.bas +17 -0
- data/test/integration/tests/basic_computer_games/3dplot.input +0 -0
- data/test/integration/tests/basic_computer_games/3dplot.output +47 -0
- data/test/integration/tests/basic_computer_games/aceyducy.bas +100 -0
- data/test/integration/tests/basic_computer_games/aceyducy.input +8 -0
- data/test/integration/tests/basic_computer_games/aceyducy.output +78 -0
- data/test/integration/tests/basic_computer_games/amazing.bas +138 -0
- data/test/integration/tests/basic_computer_games/amazing.input +1 -0
- data/test/integration/tests/basic_computer_games/amazing.output +32 -0
- data/test/integration/tests/basic_computer_games/animal.bas +71 -0
- data/test/integration/tests/basic_computer_games/animal.input +17 -0
- data/test/integration/tests/basic_computer_games/animal.output +38 -0
- data/test/integration/tests/basic_computer_games/awari.bas +70 -0
- data/test/integration/tests/basic_computer_games/awari.input +11 -0
- data/test/integration/tests/basic_computer_games/awari.output +117 -0
- data/test/integration/tests/basic_computer_games/bagels.bas +81 -0
- data/test/integration/tests/basic_computer_games/bagels.input +12 -0
- data/test/integration/tests/basic_computer_games/bagels.output +42 -0
- data/test/integration/tests/basic_computer_games/banner.bas +94 -0
- data/test/integration/tests/basic_computer_games/banner.input +6 -0
- data/test/integration/tests/basic_computer_games/banner.output +135 -0
- data/test/integration/tests/basic_computer_games/basketbl.bas +196 -0
- data/test/integration/tests/basic_computer_games/basketbl.input +46 -0
- data/test/integration/tests/basic_computer_games/basketbl.output +509 -0
- data/test/integration/tests/basic_computer_games/batnum.bas +90 -0
- data/test/integration/tests/basic_computer_games/batnum.input +14 -0
- data/test/integration/tests/basic_computer_games/batnum.output +67 -0
- data/test/integration/tests/basic_computer_games/battle.bas +196 -0
- data/test/integration/tests/basic_computer_games/battle.input +21 -0
- data/test/integration/tests/basic_computer_games/battle.output +118 -0
- data/test/integration/tests/basic_computer_games/blackjck.bas +321 -0
- data/test/integration/tests/basic_computer_games/blackjck.input +26 -0
- data/test/integration/tests/basic_computer_games/blackjck.output +144 -0
- data/test/integration/tests/basic_computer_games/bombard.bas +93 -0
- data/test/integration/tests/basic_computer_games/bombard.input +20 -0
- data/test/integration/tests/basic_computer_games/bombard.output +175 -0
- data/test/integration/tests/basic_computer_games/bounce.bas +53 -0
- data/test/integration/tests/basic_computer_games/bounce.input +0 -0
- data/test/integration/tests/basic_computer_games/bounce.output +15 -0
- data/test/integration/tests/basic_computer_games/bowling.bas +101 -0
- data/test/integration/tests/basic_computer_games/bowling.input +23 -0
- data/test/integration/tests/basic_computer_games/bowling.output +229 -0
- data/test/integration/tests/basic_computer_games/boxing.bas +142 -0
- data/test/integration/tests/basic_computer_games/boxing.input +8 -0
- data/test/integration/tests/basic_computer_games/boxing.output +47 -0
- data/test/integration/tests/basic_computer_games/bug.bas +256 -0
- data/test/integration/tests/basic_computer_games/bug.input +17 -0
- data/test/integration/tests/basic_computer_games/bug.output +847 -0
- data/test/integration/tests/basic_computer_games/bullfght.bas +193 -0
- data/test/integration/tests/basic_computer_games/bullfght.input +4 -0
- data/test/integration/tests/basic_computer_games/bullfght.output +60 -0
- data/test/integration/tests/basic_computer_games/bullseye.bas +37 -0
- data/test/integration/tests/basic_computer_games/bullseye.input +10 -0
- data/test/integration/tests/basic_computer_games/bullseye.output +79 -0
- data/test/integration/tests/basic_computer_games/bunny.bas +40 -0
- data/test/integration/tests/basic_computer_games/bunny.input +0 -0
- data/test/integration/tests/basic_computer_games/bunny.output +67 -0
- data/test/integration/tests/basic_computer_games/buzzword.bas +25 -0
- data/test/integration/tests/basic_computer_games/buzzword.input +4 -0
- data/test/integration/tests/basic_computer_games/buzzword.output +25 -0
- data/test/integration/tests/basic_computer_games/calendar.bas +58 -0
- data/test/integration/tests/basic_computer_games/calendar.input +0 -0
- data/test/integration/tests/basic_computer_games/calendar.output +213 -0
- data/test/integration/tests/basic_computer_games/change.bas +51 -0
- data/test/integration/tests/basic_computer_games/change.input +4 -0
- data/test/integration/tests/basic_computer_games/change.output +28 -0
- data/test/integration/tests/basic_computer_games/checkers.bas +82 -0
- data/test/integration/tests/basic_computer_games/checkers.input +74 -0
- data/test/integration/tests/basic_computer_games/checkers.output +673 -0
- data/test/integration/tests/basic_computer_games/chemist.bas +27 -0
- data/test/integration/tests/basic_computer_games/chemist.input +11 -0
- data/test/integration/tests/basic_computer_games/chemist.output +54 -0
- data/test/integration/tests/basic_computer_games/chief.bas +51 -0
- data/test/integration/tests/basic_computer_games/chief.input +5 -0
- data/test/integration/tests/basic_computer_games/chief.output +19 -0
- data/test/integration/tests/basic_computer_games/chomp.bas +104 -0
- data/test/integration/tests/basic_computer_games/chomp.input +15 -0
- data/test/integration/tests/basic_computer_games/chomp.output +159 -0
- data/test/integration/tests/basic_computer_games/combat.bas +124 -0
- data/test/integration/tests/basic_computer_games/combat.input +7 -0
- data/test/integration/tests/basic_computer_games/combat.output +33 -0
- data/test/integration/tests/basic_computer_games/craps.bas +82 -0
- data/test/integration/tests/basic_computer_games/craps.input +9 -0
- data/test/integration/tests/basic_computer_games/craps.output +51 -0
- data/test/integration/tests/basic_computer_games/cube.bas +161 -0
- data/test/integration/tests/basic_computer_games/cube.input +25 -0
- data/test/integration/tests/basic_computer_games/cube.output +72 -0
- data/test/integration/tests/basic_computer_games/depthchg.bas +33 -0
- data/test/integration/tests/basic_computer_games/depthchg.input +16 -0
- data/test/integration/tests/basic_computer_games/depthchg.output +83 -0
- data/test/integration/tests/basic_computer_games/diamond.bas +27 -0
- data/test/integration/tests/basic_computer_games/diamond.input +1 -0
- data/test/integration/tests/basic_computer_games/diamond.output +65 -0
- data/test/integration/tests/basic_computer_games/dice.bas +31 -0
- data/test/integration/tests/basic_computer_games/dice.input +4 -0
- data/test/integration/tests/basic_computer_games/dice.output +46 -0
- data/test/integration/tests/basic_computer_games/digits.bas +78 -0
- data/test/integration/tests/basic_computer_games/digits.input +5 -0
- data/test/integration/tests/basic_computer_games/digits.output +70 -0
- data/test/integration/tests/basic_computer_games/evenwin1.bas +128 -0
- data/test/integration/tests/basic_computer_games/evenwin1.input +13 -0
- data/test/integration/tests/basic_computer_games/evenwin1.output +116 -0
- data/test/integration/tests/basic_computer_games/evenwin2.bas +70 -0
- data/test/integration/tests/basic_computer_games/evenwin2.input +14 -0
- data/test/integration/tests/basic_computer_games/evenwin2.output +56 -0
- data/test/integration/tests/basic_computer_games/flipflop.bas +79 -0
- data/test/integration/tests/basic_computer_games/flipflop.input +8 -0
- data/test/integration/tests/basic_computer_games/flipflop.output +45 -0
- data/test/integration/tests/basic_computer_games/footbal1.bas +298 -0
- data/test/integration/tests/basic_computer_games/footbal1.input +13 -0
- data/test/integration/tests/basic_computer_games/footbal1.output +315 -0
- data/test/integration/tests/basic_computer_games/footbal2.bas +181 -0
- data/test/integration/tests/basic_computer_games/footbal2.input +23 -0
- data/test/integration/tests/basic_computer_games/footbal2.output +318 -0
- data/test/integration/tests/basic_computer_games/furtradr.bas +170 -0
- data/test/integration/tests/basic_computer_games/furtradr.input +20 -0
- data/test/integration/tests/basic_computer_games/furtradr.output +133 -0
- data/test/integration/tests/basic_computer_games/golf.bas +244 -0
- data/test/integration/tests/basic_computer_games/golf.input +11 -0
- data/test/integration/tests/basic_computer_games/golf.output +69 -0
- data/test/integration/tests/basic_computer_games/gomoko.bas +54 -0
- data/test/integration/tests/basic_computer_games/gomoko.input +6 -0
- data/test/integration/tests/basic_computer_games/gomoko.output +66 -0
- data/test/integration/tests/basic_computer_games/guess.bas +40 -0
- data/test/integration/tests/basic_computer_games/guess.input +8 -0
- data/test/integration/tests/basic_computer_games/guess.output +37 -0
- data/test/integration/tests/basic_computer_games/gunner.bas +52 -0
- data/test/integration/tests/basic_computer_games/gunner.input +18 -0
- data/test/integration/tests/basic_computer_games/gunner.output +91 -0
- data/test/integration/tests/basic_computer_games/hamurabi.bas +119 -0
- data/test/integration/tests/basic_computer_games/hamurabi.input +7 -0
- data/test/integration/tests/basic_computer_games/hamurabi.output +51 -0
- data/test/integration/tests/basic_computer_games/hangman.bas +81 -0
- data/test/integration/tests/basic_computer_games/hangman.input +69 -0
- data/test/integration/tests/basic_computer_games/hangman.output +889 -0
- data/test/integration/tests/basic_computer_games/hello.bas +83 -0
- data/test/integration/tests/basic_computer_games/hello.input +7 -0
- data/test/integration/tests/basic_computer_games/hello.output +46 -0
- data/test/integration/tests/basic_computer_games/hexapawn.bas +174 -0
- data/test/integration/tests/basic_computer_games/hexapawn.input +38 -0
- data/test/integration/tests/basic_computer_games/hexapawn.output +521 -0
- data/test/integration/tests/basic_computer_games/hi-q.bas +135 -0
- data/test/integration/tests/basic_computer_games/hi-q.input +14 -0
- data/test/integration/tests/basic_computer_games/hi-q.output +115 -0
- data/test/integration/tests/basic_computer_games/hilo.bas +29 -0
- data/test/integration/tests/basic_computer_games/hilo.input +20 -0
- data/test/integration/tests/basic_computer_games/hilo.output +76 -0
- data/test/integration/tests/basic_computer_games/hockey.bas +210 -0
- data/test/integration/tests/basic_computer_games/hockey.input +59 -0
- data/test/integration/tests/basic_computer_games/hockey.output +243 -0
- data/test/integration/tests/basic_computer_games/horsrace.bas +130 -0
- data/test/integration/tests/basic_computer_games/horsrace.input +11 -0
- data/test/integration/tests/basic_computer_games/horsrace.output +517 -0
- data/test/integration/tests/basic_computer_games/hurkle.bas +51 -0
- data/test/integration/tests/basic_computer_games/hurkle.input +16 -0
- data/test/integration/tests/basic_computer_games/hurkle.output +81 -0
- data/test/integration/tests/basic_computer_games/kinema.bas +34 -0
- data/test/integration/tests/basic_computer_games/kinema.input +9 -0
- data/test/integration/tests/basic_computer_games/kinema.output +64 -0
- data/test/integration/tests/basic_computer_games/king.bas +268 -0
- data/test/integration/tests/basic_computer_games/king.input +7 -0
- data/test/integration/tests/basic_computer_games/king.output +57 -0
- data/test/integration/tests/basic_computer_games/lem.bas +246 -0
- data/test/integration/tests/basic_computer_games/lem.input +4 -0
- data/test/integration/tests/basic_computer_games/lem.output +68 -0
- data/test/integration/tests/basic_computer_games/letter.bas +26 -0
- data/test/integration/tests/basic_computer_games/letter.input +24 -0
- data/test/integration/tests/basic_computer_games/letter.output +123 -0
- data/test/integration/tests/basic_computer_games/life.bas +66 -0
- data/test/integration/tests/basic_computer_games/life.input +4 -0
- data/test/integration/tests/basic_computer_games/life.options +1 -0
- data/test/integration/tests/basic_computer_games/life.output +200 -0
- data/test/integration/tests/basic_computer_games/life2.bas +83 -0
- data/test/integration/tests/basic_computer_games/life2.input +17 -0
- data/test/integration/tests/basic_computer_games/life2.output +113 -0
- data/test/integration/tests/basic_computer_games/litquiz.bas +49 -0
- data/test/integration/tests/basic_computer_games/litquiz.input +4 -0
- data/test/integration/tests/basic_computer_games/litquiz.output +36 -0
- data/test/integration/tests/basic_computer_games/love.bas +34 -0
- data/test/integration/tests/basic_computer_games/love.input +1 -0
- data/test/integration/tests/basic_computer_games/love.output +67 -0
- data/test/integration/tests/basic_computer_games/lunar.bas +48 -0
- data/test/integration/tests/basic_computer_games/lunar.input +87 -0
- data/test/integration/tests/basic_computer_games/lunar.output +195 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.bas +232 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.input +18 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.output +67 -0
- data/test/integration/tests/basic_computer_games/mathdice.bas +60 -0
- data/test/integration/tests/basic_computer_games/mathdice.input +4 -0
- data/test/integration/tests/basic_computer_games/mathdice.output +86 -0
- data/test/integration/tests/basic_computer_games/mugwump.bas +56 -0
- data/test/integration/tests/basic_computer_games/mugwump.input +16 -0
- data/test/integration/tests/basic_computer_games/mugwump.output +139 -0
- data/test/integration/tests/basic_computer_games/name.bas +25 -0
- data/test/integration/tests/basic_computer_games/name.input +2 -0
- data/test/integration/tests/basic_computer_games/name.output +22 -0
- data/test/integration/tests/basic_computer_games/nicoma.bas +34 -0
- data/test/integration/tests/basic_computer_games/nicoma.input +8 -0
- data/test/integration/tests/basic_computer_games/nicoma.output +36 -0
- data/test/integration/tests/basic_computer_games/nim.bas +156 -0
- data/test/integration/tests/basic_computer_games/nim.input +8 -0
- data/test/integration/tests/basic_computer_games/nim.output +30 -0
- data/test/integration/tests/basic_computer_games/number.bas +37 -0
- data/test/integration/tests/basic_computer_games/number.input +19 -0
- data/test/integration/tests/basic_computer_games/number.output +73 -0
- data/test/integration/tests/basic_computer_games/onecheck.bas +86 -0
- data/test/integration/tests/basic_computer_games/onecheck.input +6 -0
- data/test/integration/tests/basic_computer_games/onecheck.output +77 -0
- data/test/integration/tests/basic_computer_games/orbit.bas +96 -0
- data/test/integration/tests/basic_computer_games/orbit.input +10 -0
- data/test/integration/tests/basic_computer_games/orbit.output +113 -0
- data/test/integration/tests/basic_computer_games/pizza.bas +68 -0
- data/test/integration/tests/basic_computer_games/pizza.input +10 -0
- data/test/integration/tests/basic_computer_games/pizza.output +93 -0
- data/test/integration/tests/basic_computer_games/poetry.bas +42 -0
- data/test/integration/tests/basic_computer_games/poetry.input +0 -0
- data/test/integration/tests/basic_computer_games/poetry.options +1 -0
- data/test/integration/tests/basic_computer_games/poetry.output +50 -0
- data/test/integration/tests/basic_computer_games/poker.bas +416 -0
- data/test/integration/tests/basic_computer_games/poker.input +34 -0
- data/test/integration/tests/basic_computer_games/poker.output +197 -0
- data/test/integration/tests/basic_computer_games/queen.bas +168 -0
- data/test/integration/tests/basic_computer_games/queen.input +10 -0
- data/test/integration/tests/basic_computer_games/queen.output +133 -0
- data/test/integration/tests/basic_computer_games/reverse.bas +62 -0
- data/test/integration/tests/basic_computer_games/reverse.input +12 -0
- data/test/integration/tests/basic_computer_games/reverse.output +79 -0
- data/test/integration/tests/basic_computer_games/rocket.bas +71 -0
- data/test/integration/tests/basic_computer_games/rocket.input +42 -0
- data/test/integration/tests/basic_computer_games/rocket.output +149 -0
- data/test/integration/tests/basic_computer_games/rocksp.bas +33 -0
- data/test/integration/tests/basic_computer_games/rocksp.input +9 -0
- data/test/integration/tests/basic_computer_games/rocksp.output +69 -0
- data/test/integration/tests/basic_computer_games/roulette.bas +239 -0
- data/test/integration/tests/basic_computer_games/roulette.input +9 -0
- data/test/integration/tests/basic_computer_games/roulette.output +98 -0
- data/test/integration/tests/basic_computer_games/rusrou.bas +26 -0
- data/test/integration/tests/basic_computer_games/rusrou.input +9 -0
- data/test/integration/tests/basic_computer_games/rusrou.output +50 -0
- data/test/integration/tests/basic_computer_games/salvo.bas +329 -0
- data/test/integration/tests/basic_computer_games/salvo.input +21 -0
- data/test/integration/tests/basic_computer_games/salvo.output +49 -0
- data/test/integration/tests/basic_computer_games/sinewave.bas +17 -0
- data/test/integration/tests/basic_computer_games/sinewave.input +0 -0
- data/test/integration/tests/basic_computer_games/sinewave.output +168 -0
- data/test/integration/tests/basic_computer_games/slalom.bas +165 -0
- data/test/integration/tests/basic_computer_games/slalom.input +20 -0
- data/test/integration/tests/basic_computer_games/slalom.output +122 -0
- data/test/integration/tests/basic_computer_games/slots.bas +134 -0
- data/test/integration/tests/basic_computer_games/slots.input +2 -0
- data/test/integration/tests/basic_computer_games/slots.output +20 -0
- data/test/integration/tests/basic_computer_games/splat.bas +128 -0
- data/test/integration/tests/basic_computer_games/splat.input +9 -0
- data/test/integration/tests/basic_computer_games/splat.output +61 -0
- data/test/integration/tests/basic_computer_games/stars.bas +54 -0
- data/test/integration/tests/basic_computer_games/stars.input +15 -0
- data/test/integration/tests/basic_computer_games/stars.output +70 -0
- data/test/integration/tests/basic_computer_games/stock.bas +232 -0
- data/test/integration/tests/basic_computer_games/stock.input +30 -0
- data/test/integration/tests/basic_computer_games/stock.output +156 -0
- data/test/integration/tests/basic_computer_games/superstartrek.bas +425 -0
- data/test/integration/tests/basic_computer_games/superstartrek.input +21 -0
- data/test/integration/tests/basic_computer_games/superstartrek.output +151 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.bas +127 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.input +1 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.output +134 -0
- data/test/integration/tests/basic_computer_games/synonym.bas +53 -0
- data/test/integration/tests/basic_computer_games/synonym.input +13 -0
- data/test/integration/tests/basic_computer_games/synonym.output +57 -0
- data/test/integration/tests/basic_computer_games/target.bas +51 -0
- data/test/integration/tests/basic_computer_games/target.input +2 -0
- data/test/integration/tests/basic_computer_games/target.output +39 -0
- data/test/integration/tests/basic_computer_games/tictac1.bas +69 -0
- data/test/integration/tests/basic_computer_games/tictac1.input +10 -0
- data/test/integration/tests/basic_computer_games/tictac1.output +49 -0
- data/test/integration/tests/basic_computer_games/tictac2.bas +114 -0
- data/test/integration/tests/basic_computer_games/tictac2.input +6 -0
- data/test/integration/tests/basic_computer_games/tictac2.output +104 -0
- data/test/integration/tests/basic_computer_games/towers.bas +125 -0
- data/test/integration/tests/basic_computer_games/towers.input +9 -0
- data/test/integration/tests/basic_computer_games/towers.output +70 -0
- data/test/integration/tests/basic_computer_games/train.bas +24 -0
- data/test/integration/tests/basic_computer_games/train.input +4 -0
- data/test/integration/tests/basic_computer_games/train.output +23 -0
- data/test/integration/tests/basic_computer_games/trap.bas +49 -0
- data/test/integration/tests/basic_computer_games/trap.input +7 -0
- data/test/integration/tests/basic_computer_games/trap.output +40 -0
- data/test/integration/tests/basic_computer_games/war.bas +68 -0
- data/test/integration/tests/basic_computer_games/war.input +11 -0
- data/test/integration/tests/basic_computer_games/war.output +54 -0
- data/test/integration/tests/basic_computer_games/weekday.bas +150 -0
- data/test/integration/tests/basic_computer_games/weekday.input +2 -0
- data/test/integration/tests/basic_computer_games/weekday.output +28 -0
- data/test/integration/tests/basic_computer_games/word.bas +65 -0
- data/test/integration/tests/basic_computer_games/word.input +6 -0
- data/test/integration/tests/basic_computer_games/word.output +0 -0
- data/test/integration/tests/fast/abs.bas +5 -0
- data/test/integration/tests/fast/abs.input +0 -0
- data/test/integration/tests/fast/abs.output +5 -0
- data/test/integration/tests/fast/add.bas +5 -0
- data/test/integration/tests/fast/add.input +0 -0
- data/test/integration/tests/fast/add.output +5 -0
- data/test/integration/tests/fast/and.bas +5 -0
- data/test/integration/tests/fast/and.input +0 -0
- data/test/integration/tests/fast/and.output +5 -0
- data/test/integration/tests/fast/array.bas +11 -0
- data/test/integration/tests/fast/array.input +0 -0
- data/test/integration/tests/fast/array.output +6 -0
- data/test/integration/tests/fast/asc.bas +1 -0
- data/test/integration/tests/fast/asc.input +0 -0
- data/test/integration/tests/fast/asc.output +1 -0
- data/test/integration/tests/fast/chr.bas +1 -0
- data/test/integration/tests/fast/chr.input +0 -0
- data/test/integration/tests/fast/chr.output +1 -0
- data/test/integration/tests/fast/cos.bas +1 -0
- data/test/integration/tests/fast/cos.input +0 -0
- data/test/integration/tests/fast/cos.output +1 -0
- data/test/integration/tests/fast/def_fn.bas +9 -0
- data/test/integration/tests/fast/def_fn.input +0 -0
- data/test/integration/tests/fast/def_fn.output +5 -0
- data/test/integration/tests/fast/divide.bas +5 -0
- data/test/integration/tests/fast/divide.input +0 -0
- data/test/integration/tests/fast/divide.output +5 -0
- data/test/integration/tests/fast/end.bas +3 -0
- data/test/integration/tests/fast/end.input +0 -0
- data/test/integration/tests/fast/end.output +1 -0
- data/test/integration/tests/fast/eq.bas +3 -0
- data/test/integration/tests/fast/eq.input +0 -0
- data/test/integration/tests/fast/eq.output +3 -0
- data/test/integration/tests/fast/exp.bas +2 -0
- data/test/integration/tests/fast/exp.input +0 -0
- data/test/integration/tests/fast/exp.output +2 -0
- data/test/integration/tests/fast/float.bas +3 -0
- data/test/integration/tests/fast/float.input +0 -0
- data/test/integration/tests/fast/float.output +2 -0
- data/test/integration/tests/fast/for_next.bas +61 -0
- data/test/integration/tests/fast/for_next.input +0 -0
- data/test/integration/tests/fast/for_next.output +46 -0
- data/test/integration/tests/fast/ge.bas +3 -0
- data/test/integration/tests/fast/ge.input +0 -0
- data/test/integration/tests/fast/ge.output +3 -0
- data/test/integration/tests/fast/gosub_return.bas +10 -0
- data/test/integration/tests/fast/gosub_return.input +0 -0
- data/test/integration/tests/fast/gosub_return.output +4 -0
- data/test/integration/tests/fast/goto.bas +3 -0
- data/test/integration/tests/fast/goto.input +0 -0
- data/test/integration/tests/fast/goto.output +1 -0
- data/test/integration/tests/fast/gt.bas +3 -0
- data/test/integration/tests/fast/gt.input +0 -0
- data/test/integration/tests/fast/gt.output +3 -0
- data/test/integration/tests/fast/if.bas +25 -0
- data/test/integration/tests/fast/if.input +0 -0
- data/test/integration/tests/fast/if.output +8 -0
- data/test/integration/tests/fast/input.bas +24 -0
- data/test/integration/tests/fast/input.input +10 -0
- data/test/integration/tests/fast/input.output +28 -0
- data/test/integration/tests/fast/int.bas +5 -0
- data/test/integration/tests/fast/int.input +0 -0
- data/test/integration/tests/fast/int.output +5 -0
- data/test/integration/tests/fast/integer_plus_string.bas +1 -0
- data/test/integration/tests/fast/integer_plus_string.input +0 -0
- data/test/integration/tests/fast/integer_plus_string.output +1 -0
- data/test/integration/tests/fast/invalid_argument.bas +1 -0
- data/test/integration/tests/fast/invalid_argument.input +0 -0
- data/test/integration/tests/fast/invalid_argument.output +1 -0
- data/test/integration/tests/fast/le.bas +3 -0
- data/test/integration/tests/fast/le.input +0 -0
- data/test/integration/tests/fast/le.output +3 -0
- data/test/integration/tests/fast/left.bas +1 -0
- data/test/integration/tests/fast/left.input +0 -0
- data/test/integration/tests/fast/left.output +1 -0
- data/test/integration/tests/fast/len.bas +2 -0
- data/test/integration/tests/fast/len.input +0 -0
- data/test/integration/tests/fast/len.output +2 -0
- data/test/integration/tests/fast/let.bas +6 -0
- data/test/integration/tests/fast/let.input +0 -0
- data/test/integration/tests/fast/let.output +4 -0
- data/test/integration/tests/fast/log.bas +1 -0
- data/test/integration/tests/fast/log.input +0 -0
- data/test/integration/tests/fast/log.output +1 -0
- data/test/integration/tests/fast/lt.bas +3 -0
- data/test/integration/tests/fast/lt.input +0 -0
- data/test/integration/tests/fast/lt.output +3 -0
- data/test/integration/tests/fast/math.output +0 -0
- data/test/integration/tests/fast/mid.bas +2 -0
- data/test/integration/tests/fast/mid.input +0 -0
- data/test/integration/tests/fast/mid.output +2 -0
- data/test/integration/tests/fast/multiply.bas +5 -0
- data/test/integration/tests/fast/multiply.input +0 -0
- data/test/integration/tests/fast/multiply.output +5 -0
- data/test/integration/tests/fast/ne.bas +3 -0
- data/test/integration/tests/fast/ne.input +0 -0
- data/test/integration/tests/fast/ne.output +3 -0
- data/test/integration/tests/fast/negate.bas +4 -0
- data/test/integration/tests/fast/negate.input +0 -0
- data/test/integration/tests/fast/negate.output +3 -0
- data/test/integration/tests/fast/not.bas +4 -0
- data/test/integration/tests/fast/not.input +0 -0
- data/test/integration/tests/fast/not.output +4 -0
- data/test/integration/tests/fast/on_goto.bas +6 -0
- data/test/integration/tests/fast/on_goto.input +0 -0
- data/test/integration/tests/fast/on_goto.output +2 -0
- data/test/integration/tests/fast/or.bas +5 -0
- data/test/integration/tests/fast/or.input +0 -0
- data/test/integration/tests/fast/or.output +5 -0
- data/test/integration/tests/fast/parentheses.bas +1 -0
- data/test/integration/tests/fast/parentheses.input +0 -0
- data/test/integration/tests/fast/parentheses.output +1 -0
- data/test/integration/tests/fast/power.bas +4 -0
- data/test/integration/tests/fast/power.input +0 -0
- data/test/integration/tests/fast/power.output +4 -0
- data/test/integration/tests/fast/print.bas +6 -0
- data/test/integration/tests/fast/print.input +0 -0
- data/test/integration/tests/fast/print.output +4 -0
- data/test/integration/tests/fast/read_data.bas +15 -0
- data/test/integration/tests/fast/read_data.input +0 -0
- data/test/integration/tests/fast/read_data.output +4 -0
- data/test/integration/tests/fast/rem.bas +1 -0
- data/test/integration/tests/fast/rem.input +0 -0
- data/test/integration/tests/fast/rem.output +0 -0
- data/test/integration/tests/fast/right.bas +1 -0
- data/test/integration/tests/fast/right.input +0 -0
- data/test/integration/tests/fast/right.output +1 -0
- data/test/integration/tests/fast/rnd.bas +5 -0
- data/test/integration/tests/fast/rnd.input +0 -0
- data/test/integration/tests/fast/rnd.output +5 -0
- data/test/integration/tests/fast/sgn.bas +5 -0
- data/test/integration/tests/fast/sgn.input +0 -0
- data/test/integration/tests/fast/sgn.output +5 -0
- data/test/integration/tests/fast/sin.bas +1 -0
- data/test/integration/tests/fast/sin.input +0 -0
- data/test/integration/tests/fast/sin.output +1 -0
- data/test/integration/tests/fast/sqr.bas +2 -0
- data/test/integration/tests/fast/sqr.input +0 -0
- data/test/integration/tests/fast/sqr.output +2 -0
- data/test/integration/tests/fast/stop.bas +3 -0
- data/test/integration/tests/fast/stop.input +0 -0
- data/test/integration/tests/fast/stop.output +2 -0
- data/test/integration/tests/fast/str.bas +3 -0
- data/test/integration/tests/fast/str.input +0 -0
- data/test/integration/tests/fast/str.output +3 -0
- data/test/integration/tests/fast/string_addition.bas +1 -0
- data/test/integration/tests/fast/string_addition.input +0 -0
- data/test/integration/tests/fast/string_addition.output +1 -0
- data/test/integration/tests/fast/string_comparisons.bas +7 -0
- data/test/integration/tests/fast/string_comparisons.input +0 -0
- data/test/integration/tests/fast/string_comparisons.output +4 -0
- data/test/integration/tests/fast/string_plus_integer.bas +1 -0
- data/test/integration/tests/fast/string_plus_integer.input +0 -0
- data/test/integration/tests/fast/string_plus_integer.output +1 -0
- data/test/integration/tests/fast/subtract.bas +5 -0
- data/test/integration/tests/fast/subtract.input +0 -0
- data/test/integration/tests/fast/subtract.output +5 -0
- data/test/integration/tests/fast/tab.bas +4 -0
- data/test/integration/tests/fast/tab.input +0 -0
- data/test/integration/tests/fast/tab.output +3 -0
- data/test/integration/tests/fast/tan.bas +1 -0
- data/test/integration/tests/fast/tan.input +0 -0
- data/test/integration/tests/fast/tan.output +1 -0
- data/test/integration/tests/fast/val.bas +3 -0
- data/test/integration/tests/fast/val.input +0 -0
- data/test/integration/tests/fast/val.output +3 -0
- data/test/spec/argument_checker_spec.rb +128 -0
- data/test/spec/basic_array_spec.rb +100 -0
- data/test/spec/basic_float_spec.rb +168 -0
- data/test/spec/basic_integer_spec.rb +270 -0
- data/test/spec/basic_numeric_spec.rb +16 -0
- data/test/spec/basic_object_spec.rb +22 -0
- data/test/spec/basic_string_spec.rb +259 -0
- data/test/spec/for_stack_spec.rb +70 -0
- data/test/spec/input_reader_spec.rb +143 -0
- data/test/spec/input_spec.rb +102 -0
- data/test/spec/line_spec.rb +18 -0
- data/test/spec/output_spec.rb +153 -0
- data/test/spec/parser_spec.rb +562 -0
- data/test/spec/program_spec.rb +45 -0
- data/test/spec/spec_helper.rb +15 -0
- data/test/spec/support/basic_numeric_helpers.rb +327 -0
- data/test/spec/support/basic_object_helpers.rb +22 -0
- data/test/spec/transcript_spec.rb +37 -0
- data/test/spec/transform_spec.rb +513 -0
- metadata +742 -0
@@ -0,0 +1,127 @@
|
|
1
|
+
10 REM INSTRUCTIONS FOR "SUPER STARTREK" MAR 5, 1978
|
2
|
+
20 FOR I=1 TO 12:PRINT:NEXT I
|
3
|
+
21 PRINT TAB(10);"*************************************"
|
4
|
+
22 PRINT TAB(10);"* *"
|
5
|
+
23 PRINT TAB(10);"* *"
|
6
|
+
30 PRINT TAB(10);"* * * SUPER STAR TREK * * *"
|
7
|
+
31 PRINT TAB(10);"* *"
|
8
|
+
32 PRINT TAB(10);"* *"
|
9
|
+
35 PRINT TAB(10);"*************************************"
|
10
|
+
36 FOR I=1 TO 8:PRINT:NEXT I
|
11
|
+
40 INPUT "DO YOU NEED INSTRUCTIONS (Y/N)";K$:IF K$="N" THEN 2000
|
12
|
+
44 PRINT
|
13
|
+
45 REM PRINT "TURN THE TTY ON-LINE AND HIT ANY KEY EXCEPT RETURN"
|
14
|
+
46 REM IF INP(1)=13 THEN 46
|
15
|
+
50 REM POKE 1229,2:POKE 1237,3:NULL 1
|
16
|
+
90 PRINT" INSTRUCTIONS FOR 'SUPER STAR TREK'"
|
17
|
+
100 PRINT
|
18
|
+
110 PRINT"1. WHEN YOU SEE \COMMAND ?\ PRINTED, ENTER ONE OF THE LEGAL"
|
19
|
+
120 PRINT" COMMANDS (NAV,SRS,LRS,PHA,TOR,SHE,DAM,COM, OR XXX)."
|
20
|
+
130 PRINT"2. IF YOU SHOULD TYPE IN AN ILLEGAL COMMAND, YOU'LL GET A SHORT"
|
21
|
+
140 PRINT" LIST OF THE LEGAL COMMANDS PRINTED OUT."
|
22
|
+
150 PRINT"3. SOME COMMANDS REQUIRE YOU TO ENTER DATA (FOR EXAMPLE, THE"
|
23
|
+
160 PRINT" 'NAV' COMMAND COMES BACK WITH 'COURSE (1-9) ?'.) IF YOU"
|
24
|
+
170 PRINT" TYPE IN ILLEGAL DATA (LIKE NEGATIVE NUMBERS), THAN COMMAND"
|
25
|
+
180 PRINT" WILL BE ABORTED"
|
26
|
+
190 PRINT
|
27
|
+
270 PRINT" THE GALAXY IS DIVIDED INTO AN 8 X 8 QUADRANT GRID,"
|
28
|
+
280 PRINT"AND EACH QUADRANT IS FURTHER DIVIDED INTO AN 8 X 8 SECTOR GRID."
|
29
|
+
290 PRINT
|
30
|
+
300 PRINT" YOU WILL BE ASSIGNED A STARTING POINT SOMEWHERE IN THE"
|
31
|
+
310 PRINT"GALAXY TO BEGIN A TOUR OF DUTY AS COMANDER OF THE STARSHIP"
|
32
|
+
320 PRINT"\ENTERPRISE\; YOUR MISSION: TO SEEK AND DESTROY THE FLEET OF"
|
33
|
+
330 PRINT"KLINGON WARWHIPS WHICH ARE MENACING THE UNITED FEDERATION OF"
|
34
|
+
340 PRINT"PLANETS."
|
35
|
+
360 PRINT
|
36
|
+
370 PRINT" YOU HAVE THE FOLLOWING COMMANDS AVAILABLE TO YOU AS CAPTAIN"
|
37
|
+
380 PRINT"OF THE STARSHIP ENTERPRISE:"
|
38
|
+
385 PRINT
|
39
|
+
390 PRINT"\NAV\ COMMAND = WARP ENGINE CONTROL --"
|
40
|
+
400 PRINT" COURSE IS IN A CIRCULAR NUMERICAL 4 3 2"
|
41
|
+
410 PRINT" VECTOR ARRANGEMENT AS SHOWN . . ."
|
42
|
+
420 PRINT" INTEGER AND REAL VALUES MAY BE ..."
|
43
|
+
430 PRINT" USED. (THUS COURSE 1.5 IS HALF- 5 ---*--- 1"
|
44
|
+
440 PRINT" WAY BETWEEN 1 AND 2 ..."
|
45
|
+
450 PRINT" . . ."
|
46
|
+
460 PRINT" VALUES MAY APPROACH 9.0, WHICH 6 7 8"
|
47
|
+
470 PRINT" ITSELF IS EQUIVALENT TO 1.0"
|
48
|
+
480 PRINT" COURSE"
|
49
|
+
490 PRINT" ONE WARP FACTOR IS THE SIZE OF "
|
50
|
+
500 PRINT" ONE QUADTANT. THEREFORE, TO GET"
|
51
|
+
510 PRINT" FROM QUADRANT 6,5 TO 5,5, YOU WOULD"
|
52
|
+
520 PRINT" USE COURSE 3, WARP FACTOR 1."
|
53
|
+
530 PRINT
|
54
|
+
540 PRINT"\SRS\ COMMAND = SHORT RANGE SENSOR SCAN"
|
55
|
+
550 PRINT" SHOWS YOU A SCAN OF YOUR PRESENT QUADRANT."
|
56
|
+
555 PRINT
|
57
|
+
560 PRINT" SYMBOLOGY ON YOUR SENSOR SCREEN IS AS FOLLOWS:"
|
58
|
+
570 PRINT" <*> = YOUR STARSHIP'S POSITION"
|
59
|
+
580 PRINT" +K+ = KLINGON BATTLE CRUISER"
|
60
|
+
590 PRINT" >!< = FEDERATION STARBASE (REFUEL/REPAIR/RE-ARM HERE!)"
|
61
|
+
600 PRINT" * = STAR"
|
62
|
+
605 PRINT
|
63
|
+
610 PRINT" A CONDENSED 'STATUS REPORT' WILL ALSO BE PRESENTED."
|
64
|
+
620 PRINT
|
65
|
+
640 PRINT"\LRS\ COMMAND = LONG RANGE SENSOR SCAN"
|
66
|
+
650 PRINT" SHOWS CONDITIONS IN SPACE FOR ONE QUADRANT ON EACH SIDE"
|
67
|
+
660 PRINT" OF THE ENTERPRISE (WHICH IS IN THE MIDDLE OF THE SCAN)"
|
68
|
+
670 PRINT" THE SCAN IS CODED IN THE FORM \###\, WHERE TH UNITS DIGIT"
|
69
|
+
680 PRINT" IS THE NUMBER OF STARS, THE TENS DIGIT IS THE NUMBER OF"
|
70
|
+
690 PRINT" STARBASES, AND THE HUNDRESDS DIGIT IS THE NUMBER OF"
|
71
|
+
700 PRINT" KLINGONS."
|
72
|
+
705 PRINT
|
73
|
+
706 PRINT" EXAMPLE - 207 = 2 KLINGONS, NO STARBASES, & 7 STARS."
|
74
|
+
710 PRINT
|
75
|
+
720 PRINT"\PHA\ COMMAND = PHASER CONTROL."
|
76
|
+
730 PRINT" ALLOWS YOU TO DESTROY THE KLINGON BATTLE CRUISERS BY "
|
77
|
+
740 PRINT" ZAPPING THEM WITH SUITABLY LARGE UNITS OF ENERGY TO"
|
78
|
+
750 PRINT" DEPLETE THEIR SHIELD POWER. (REMBER, KLINGONS HAVE"
|
79
|
+
760 PRINT" PHASERS TOO!)"
|
80
|
+
770 PRINT
|
81
|
+
780 PRINT"\TOR\ COMMAND = PHOTON TORPEDO CONTROL"
|
82
|
+
790 PRINT" TORPEDO COURSE IS THE SAME AS USED IN WARP ENGINE CONTROL"
|
83
|
+
800 PRINT" IF YOU HIT THE KLINGON VESSEL, HE IS DESTROYED AND"
|
84
|
+
810 PRINT" CANNOT FIRE BACK AT YOU. IF YOU MISS, YOU ARE SUBJECT TO"
|
85
|
+
820 PRINT" HIS PHASER FIRE. IN EITHER CASE, YOU ARE ALSO SUBJECT TO "
|
86
|
+
825 PRINT" THE PHASER FIRE OF ALL OTHER KLINGONS IN THE QUADRANT."
|
87
|
+
830 PRINT
|
88
|
+
835 PRINT" THE LIBRARY-COMPUTER (\COM\ COMMAND) HAS AN OPTION TO "
|
89
|
+
840 PRINT" COMPUTE TORPEDO TRAJECTORY FOR YOU (OPTION 2)"
|
90
|
+
850 PRINT
|
91
|
+
860 PRINT"\SHE\ COMMAND = SHIELD CONTROL"
|
92
|
+
870 PRINT" DEFINES THE NUMBER OF ENERGY UNITS TO BE ASSIGNED TO THE"
|
93
|
+
880 PRINT" SHIELDS. ENERGY IS TAKEN FROM TOTAL SHIP'S ENERGY. NOTE"
|
94
|
+
890 PRINT" THAN THE STATUS DISPLAY TOTAL ENERGY INCLUDES SHIELD ENERGY"
|
95
|
+
900 PRINT
|
96
|
+
910 PRINT"\DAM\ COMMAND = DAMMAGE CONTROL REPORT"
|
97
|
+
920 PRINT" GIVES THE STATE OF REPAIR OF ALL DEVICES. WHERE A NEGATIVE"
|
98
|
+
930 PRINT" 'STATE OF REPAIR' SHOWS THAT THE DEVICE IS TEMPORARILY"
|
99
|
+
940 PRINT" DAMAGED."
|
100
|
+
950 PRINT
|
101
|
+
960 PRINT"\COM\ COMMAND = LIBRARY-COMPUTER"
|
102
|
+
970 PRINT" THE LIBRARY-COMPUTER CONTAINS SIX OPTIONS:"
|
103
|
+
980 PRINT" OPTION 0 = CUMULATIVE GALACTIC RECORD"
|
104
|
+
990 PRINT" THIS OPTION SHOWES COMPUTER MEMORY OF THE RESULTS OF ALL"
|
105
|
+
1000 PRINT" PREVIOUS SHORT AND LONG RANGE SENSOR SCANS"
|
106
|
+
1010 PRINT" OPTION 1 = STATUS REPORT"
|
107
|
+
1020 PRINT" THIS OPTION SHOWS THE NUMBER OF KLINGONS, STARDATES,"
|
108
|
+
1030 PRINT" AND STARBASES REMAINING IN THE GAME."
|
109
|
+
1040 PRINT" OPTION 2 = PHOTON TORPEDO DATA"
|
110
|
+
1050 PRINT" WHICH GIVES DIRECTIONS AND DISTANCE FROM THE ENTERPRISE"
|
111
|
+
1060 PRINT" TO ALL KLINGONS IN YOUR QUADRANT"
|
112
|
+
1070 PRINT" OPTION 3 = STARBASE NAV DATA"
|
113
|
+
1080 PRINT" THIS OPTION GIVES DIRECTION AND DISTANCE TO ANY "
|
114
|
+
1090 PRINT" STARBASE WITHIN YOUR QUADRANT"
|
115
|
+
1100 PRINT" OPTION 4 = DIRECTION/DISTANCE CALCULATOR"
|
116
|
+
1110 PRINT" THIS OPTION ALLOWS YOU TO ENTER COORDINATES FOR"
|
117
|
+
1120 PRINT" DIRECTION/DISTANCE CALCULATIONS"
|
118
|
+
1130 PRINT" OPTION 5 = GALACTIC /REGION NAME/ MAP"
|
119
|
+
1140 PRINT" THIS OPTION PRINTS THE NAMES OF THE SIXTEEN MAJOR "
|
120
|
+
1150 PRINT" GALACTIC REGIONS REFERRED TO IN THE GAME."
|
121
|
+
1990 REM POKE 1229,0:POKE 1237,1:NULL 0
|
122
|
+
2000 REM PRINT:PRINT:PRINT
|
123
|
+
2010 REM PRINT "TURN CASSETTE PLAYER ON AND HIT ANY KEY EXCEPT RETURN"
|
124
|
+
2020 REM IF INP(1)=13 THEN 2020
|
125
|
+
2030 REM PRINT
|
126
|
+
2040 REM PRINT "TURN CASSETTE PLAYER OFF AND "
|
127
|
+
2050 REM PRINT "TYPE 'RUN' WHEN COMPUTER PRINTS 'OK'"
|
@@ -0,0 +1 @@
|
|
1
|
+
Y
|
@@ -0,0 +1,134 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
*************************************
|
14
|
+
* *
|
15
|
+
* *
|
16
|
+
* * * SUPER STAR TREK * * *
|
17
|
+
* *
|
18
|
+
* *
|
19
|
+
*************************************
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
DO YOU NEED INSTRUCTIONS (Y/N)? Y
|
29
|
+
|
30
|
+
INSTRUCTIONS FOR 'SUPER STAR TREK'
|
31
|
+
|
32
|
+
1. WHEN YOU SEE \COMMAND ?\ PRINTED, ENTER ONE OF THE LEGAL
|
33
|
+
COMMANDS (NAV,SRS,LRS,PHA,TOR,SHE,DAM,COM, OR XXX).
|
34
|
+
2. IF YOU SHOULD TYPE IN AN ILLEGAL COMMAND, YOU'LL GET A SHORT
|
35
|
+
LIST OF THE LEGAL COMMANDS PRINTED OUT.
|
36
|
+
3. SOME COMMANDS REQUIRE YOU TO ENTER DATA (FOR EXAMPLE, THE
|
37
|
+
'NAV' COMMAND COMES BACK WITH 'COURSE (1-9) ?'.) IF YOU
|
38
|
+
TYPE IN ILLEGAL DATA (LIKE NEGATIVE NUMBERS), THAN COMMAND
|
39
|
+
WILL BE ABORTED
|
40
|
+
|
41
|
+
THE GALAXY IS DIVIDED INTO AN 8 X 8 QUADRANT GRID,
|
42
|
+
AND EACH QUADRANT IS FURTHER DIVIDED INTO AN 8 X 8 SECTOR GRID.
|
43
|
+
|
44
|
+
YOU WILL BE ASSIGNED A STARTING POINT SOMEWHERE IN THE
|
45
|
+
GALAXY TO BEGIN A TOUR OF DUTY AS COMANDER OF THE STARSHIP
|
46
|
+
\ENTERPRISE\; YOUR MISSION: TO SEEK AND DESTROY THE FLEET OF
|
47
|
+
KLINGON WARWHIPS WHICH ARE MENACING THE UNITED FEDERATION OF
|
48
|
+
PLANETS.
|
49
|
+
|
50
|
+
YOU HAVE THE FOLLOWING COMMANDS AVAILABLE TO YOU AS CAPTAIN
|
51
|
+
OF THE STARSHIP ENTERPRISE:
|
52
|
+
|
53
|
+
\NAV\ COMMAND = WARP ENGINE CONTROL --
|
54
|
+
COURSE IS IN A CIRCULAR NUMERICAL 4 3 2
|
55
|
+
VECTOR ARRANGEMENT AS SHOWN . . .
|
56
|
+
INTEGER AND REAL VALUES MAY BE ...
|
57
|
+
USED. (THUS COURSE 1.5 IS HALF- 5 ---*--- 1
|
58
|
+
WAY BETWEEN 1 AND 2 ...
|
59
|
+
. . .
|
60
|
+
VALUES MAY APPROACH 9.0, WHICH 6 7 8
|
61
|
+
ITSELF IS EQUIVALENT TO 1.0
|
62
|
+
COURSE
|
63
|
+
ONE WARP FACTOR IS THE SIZE OF
|
64
|
+
ONE QUADTANT. THEREFORE, TO GET
|
65
|
+
FROM QUADRANT 6,5 TO 5,5, YOU WOULD
|
66
|
+
USE COURSE 3, WARP FACTOR 1.
|
67
|
+
|
68
|
+
\SRS\ COMMAND = SHORT RANGE SENSOR SCAN
|
69
|
+
SHOWS YOU A SCAN OF YOUR PRESENT QUADRANT.
|
70
|
+
|
71
|
+
SYMBOLOGY ON YOUR SENSOR SCREEN IS AS FOLLOWS:
|
72
|
+
<*> = YOUR STARSHIP'S POSITION
|
73
|
+
+K+ = KLINGON BATTLE CRUISER
|
74
|
+
>!< = FEDERATION STARBASE (REFUEL/REPAIR/RE-ARM HERE!)
|
75
|
+
* = STAR
|
76
|
+
|
77
|
+
A CONDENSED 'STATUS REPORT' WILL ALSO BE PRESENTED.
|
78
|
+
|
79
|
+
\LRS\ COMMAND = LONG RANGE SENSOR SCAN
|
80
|
+
SHOWS CONDITIONS IN SPACE FOR ONE QUADRANT ON EACH SIDE
|
81
|
+
OF THE ENTERPRISE (WHICH IS IN THE MIDDLE OF THE SCAN)
|
82
|
+
THE SCAN IS CODED IN THE FORM \###\, WHERE TH UNITS DIGIT
|
83
|
+
IS THE NUMBER OF STARS, THE TENS DIGIT IS THE NUMBER OF
|
84
|
+
STARBASES, AND THE HUNDRESDS DIGIT IS THE NUMBER OF
|
85
|
+
KLINGONS.
|
86
|
+
|
87
|
+
EXAMPLE - 207 = 2 KLINGONS, NO STARBASES, & 7 STARS.
|
88
|
+
|
89
|
+
\PHA\ COMMAND = PHASER CONTROL.
|
90
|
+
ALLOWS YOU TO DESTROY THE KLINGON BATTLE CRUISERS BY
|
91
|
+
ZAPPING THEM WITH SUITABLY LARGE UNITS OF ENERGY TO
|
92
|
+
DEPLETE THEIR SHIELD POWER. (REMBER, KLINGONS HAVE
|
93
|
+
PHASERS TOO!)
|
94
|
+
|
95
|
+
\TOR\ COMMAND = PHOTON TORPEDO CONTROL
|
96
|
+
TORPEDO COURSE IS THE SAME AS USED IN WARP ENGINE CONTROL
|
97
|
+
IF YOU HIT THE KLINGON VESSEL, HE IS DESTROYED AND
|
98
|
+
CANNOT FIRE BACK AT YOU. IF YOU MISS, YOU ARE SUBJECT TO
|
99
|
+
HIS PHASER FIRE. IN EITHER CASE, YOU ARE ALSO SUBJECT TO
|
100
|
+
THE PHASER FIRE OF ALL OTHER KLINGONS IN THE QUADRANT.
|
101
|
+
|
102
|
+
THE LIBRARY-COMPUTER (\COM\ COMMAND) HAS AN OPTION TO
|
103
|
+
COMPUTE TORPEDO TRAJECTORY FOR YOU (OPTION 2)
|
104
|
+
|
105
|
+
\SHE\ COMMAND = SHIELD CONTROL
|
106
|
+
DEFINES THE NUMBER OF ENERGY UNITS TO BE ASSIGNED TO THE
|
107
|
+
SHIELDS. ENERGY IS TAKEN FROM TOTAL SHIP'S ENERGY. NOTE
|
108
|
+
THAN THE STATUS DISPLAY TOTAL ENERGY INCLUDES SHIELD ENERGY
|
109
|
+
|
110
|
+
\DAM\ COMMAND = DAMMAGE CONTROL REPORT
|
111
|
+
GIVES THE STATE OF REPAIR OF ALL DEVICES. WHERE A NEGATIVE
|
112
|
+
'STATE OF REPAIR' SHOWS THAT THE DEVICE IS TEMPORARILY
|
113
|
+
DAMAGED.
|
114
|
+
|
115
|
+
\COM\ COMMAND = LIBRARY-COMPUTER
|
116
|
+
THE LIBRARY-COMPUTER CONTAINS SIX OPTIONS:
|
117
|
+
OPTION 0 = CUMULATIVE GALACTIC RECORD
|
118
|
+
THIS OPTION SHOWES COMPUTER MEMORY OF THE RESULTS OF ALL
|
119
|
+
PREVIOUS SHORT AND LONG RANGE SENSOR SCANS
|
120
|
+
OPTION 1 = STATUS REPORT
|
121
|
+
THIS OPTION SHOWS THE NUMBER OF KLINGONS, STARDATES,
|
122
|
+
AND STARBASES REMAINING IN THE GAME.
|
123
|
+
OPTION 2 = PHOTON TORPEDO DATA
|
124
|
+
WHICH GIVES DIRECTIONS AND DISTANCE FROM THE ENTERPRISE
|
125
|
+
TO ALL KLINGONS IN YOUR QUADRANT
|
126
|
+
OPTION 3 = STARBASE NAV DATA
|
127
|
+
THIS OPTION GIVES DIRECTION AND DISTANCE TO ANY
|
128
|
+
STARBASE WITHIN YOUR QUADRANT
|
129
|
+
OPTION 4 = DIRECTION/DISTANCE CALCULATOR
|
130
|
+
THIS OPTION ALLOWS YOU TO ENTER COORDINATES FOR
|
131
|
+
DIRECTION/DISTANCE CALCULATIONS
|
132
|
+
OPTION 5 = GALACTIC /REGION NAME/ MAP
|
133
|
+
THIS OPTION PRINTS THE NAMES OF THE SIXTEEN MAJOR
|
134
|
+
GALACTIC REGIONS REFERRED TO IN THE GAME.
|
@@ -0,0 +1,53 @@
|
|
1
|
+
2 PRINT TAB(33);"SYNONYM"
|
2
|
+
4 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
6 PRINT: PRINT: PRINT
|
4
|
+
10 DIM R$(5),W$(10),L(30),R(30)
|
5
|
+
20 R$(1)="RIGHT": R$(2)="CORRECT": R$(3)="FINE": R$(4)="GOOD!"
|
6
|
+
30 R$(5)="CHECK"
|
7
|
+
70 C=0
|
8
|
+
90 PRINT "A SYNONYM OF A WORD MEANS ANOTHER WORD IN THE ENGLISH"
|
9
|
+
100 PRINT "LANGUAGE WHICH HAS THE SAME OR VERY NEARLY THE SAME";
|
10
|
+
110 PRINT " MEANING."
|
11
|
+
130 PRINT "I CHOOSE A WORD -- YOU TYPE A SYNONYM."
|
12
|
+
140 PRINT "IF YOU CAN'T THINK OF A SYNONYM, TYPE THE WORD 'HELP'"
|
13
|
+
145 PRINT "AND I WILL TELL YOU A SYNONYM.": PRINT
|
14
|
+
150 RESTORE: C=C+1: READ N
|
15
|
+
160 IF C>N THEN 420
|
16
|
+
170 N1=INT(RND(1)*N+1)
|
17
|
+
174 IF R(N1)=1 THEN 170
|
18
|
+
176 R(N1)=1
|
19
|
+
180 FOR I=1 TO N1
|
20
|
+
190 READ N2
|
21
|
+
200 FOR J=1 TO N2
|
22
|
+
210 READ W$(J)
|
23
|
+
220 NEXT J
|
24
|
+
230 NEXT I
|
25
|
+
232 FOR J=1 TO N2: L(J)=J: NEXT J
|
26
|
+
235 L(0)=N2: G=1: PRINT
|
27
|
+
237 L(G)=L(L(0)): L(0)=N2-1: PRINT
|
28
|
+
240 PRINT " WHAT IS A SYNONYM OF ";W$(G);: INPUT A$
|
29
|
+
250 IF A$="HELP" THEN 340
|
30
|
+
260 FOR K=1 TO N2
|
31
|
+
270 IF G=K THEN 290
|
32
|
+
280 IF A$=W$(K) THEN 320
|
33
|
+
290 NEXT K
|
34
|
+
300 PRINT " TRY AGAIN.": GOTO 240
|
35
|
+
320 PRINT R$(INT(RND(1)*5+1)): GOTO 150
|
36
|
+
340 G1=INT(RND(1)*L(0)+1)
|
37
|
+
360 PRINT "**** A SYNONYM OF ";W$(G);" IS ";W$(L(G1));".": PRINT
|
38
|
+
370 L(G1)=L(L(0)): L(0)=L(0)-1: GOTO 240
|
39
|
+
420 PRINT: PRINT "SYNONYM DRILL COMPLETED.": GOTO 999
|
40
|
+
500 DATA 10
|
41
|
+
510 DATA 5,"FIRST","START","BEGINNING","ONSET","INITIAL"
|
42
|
+
520 DATA 5,"SIMILAR","ALIKE","SAME","LIKE","RESEMBLING"
|
43
|
+
530 DATA 5,"MODEL","PATTERN","PROTOTYPE","STANDARD","CRITERION"
|
44
|
+
540 DATA 5,"SMALL","INSIGNIFICANT","LITTLE","TINY","MINUTE"
|
45
|
+
550 DATA 6,"STOP","HALT","STAY","ARREST","CHECK","STANDSTILL"
|
46
|
+
560 DATA 6,"HOUSE","DWELLING","RESIDENCE","DOMICILE","LODGING"
|
47
|
+
565 DATA "HABITATION"
|
48
|
+
570 DATA 7,"PIT","HOLE","HOLLOW","WELL","GULF","CHASM","ABYSS"
|
49
|
+
580 DATA 7,"PUSH","SHOVE","THRUST","PROD","POKE","BUTT","PRESS"
|
50
|
+
590 DATA 6,"RED","ROUGE","SCARLET","CRIMSON","FLAME","RUBY"
|
51
|
+
600 DATA 7,"PAIN","SUFFERING","HURT","MISERY","DISTRESS","ACHE"
|
52
|
+
605 DATA "DISCOMFORT"
|
53
|
+
999 END
|
@@ -0,0 +1,57 @@
|
|
1
|
+
SYNONYM
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
A SYNONYM OF A WORD MEANS ANOTHER WORD IN THE ENGLISH
|
7
|
+
LANGUAGE WHICH HAS THE SAME OR VERY NEARLY THE SAME MEANING.
|
8
|
+
I CHOOSE A WORD -- YOU TYPE A SYNONYM.
|
9
|
+
IF YOU CAN'T THINK OF A SYNONYM, TYPE THE WORD 'HELP'
|
10
|
+
AND I WILL TELL YOU A SYNONYM.
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
WHAT IS A SYNONYM OF HOUSE? DWELLING
|
15
|
+
GOOD!
|
16
|
+
|
17
|
+
|
18
|
+
WHAT IS A SYNONYM OF PIT? HOLE
|
19
|
+
FINE
|
20
|
+
|
21
|
+
|
22
|
+
WHAT IS A SYNONYM OF STOP? HALT
|
23
|
+
GOOD!
|
24
|
+
|
25
|
+
|
26
|
+
WHAT IS A SYNONYM OF RED? COMMUNIST
|
27
|
+
TRY AGAIN.
|
28
|
+
WHAT IS A SYNONYM OF RED? MAGENTA
|
29
|
+
TRY AGAIN.
|
30
|
+
WHAT IS A SYNONYM OF RED? HELP
|
31
|
+
**** A SYNONYM OF RED IS FLAME.
|
32
|
+
|
33
|
+
WHAT IS A SYNONYM OF RED? FLAME
|
34
|
+
CORRECT
|
35
|
+
|
36
|
+
|
37
|
+
WHAT IS A SYNONYM OF PUSH? SHOVE
|
38
|
+
FINE
|
39
|
+
|
40
|
+
|
41
|
+
WHAT IS A SYNONYM OF PAIN? HURT
|
42
|
+
RIGHT
|
43
|
+
|
44
|
+
|
45
|
+
WHAT IS A SYNONYM OF FIRST? SUPERIOR
|
46
|
+
TRY AGAIN.
|
47
|
+
WHAT IS A SYNONYM OF FIRST? ALPHA
|
48
|
+
TRY AGAIN.
|
49
|
+
WHAT IS A SYNONYM OF FIRST? HELP
|
50
|
+
**** A SYNONYM OF FIRST IS INITIAL.
|
51
|
+
|
52
|
+
WHAT IS A SYNONYM OF FIRST? INITIAL
|
53
|
+
CHECK
|
54
|
+
|
55
|
+
|
56
|
+
WHAT IS A SYNONYM OF SIMILAR?
|
57
|
+
Error on line 240: No more input
|
@@ -0,0 +1,51 @@
|
|
1
|
+
10 PRINT TAB(33);"TARGET"
|
2
|
+
20 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
30 PRINT: PRINT: PRINT
|
4
|
+
100 R=1: R1=57.296: P=3.14159
|
5
|
+
110 PRINT "YOU ARE THE WEAPONS OFFICER ON THE STARSHIP ENTERPRISE"
|
6
|
+
120 PRINT "AND THIS IS A TEST TO SEE HOW ACCURATE A SHOT YOU"
|
7
|
+
130 PRINT "ARE IN A THREE-DIMENSIONAL RANGE. YOU WILL BE TOLD"
|
8
|
+
140 PRINT "THE RADIAN OFFSET FOR THE X AND Z AXES, THE LOCATION"
|
9
|
+
150 PRINT "OF THE TARGET IN THREE DIMENSIONAL RECTANGULAR COORDINATES,"
|
10
|
+
160 PRINT "THE APPROXIMATE NUMBER OF DEGREES FROM THE X AND Z"
|
11
|
+
170 PRINT "AXES, AND THE APPROXIMATE DISTANCE TO THE TARGET."
|
12
|
+
180 PRINT "YOU WILL THEN PROCEEED TO SHOOT AT THE TARGET UNTIL IT IS"
|
13
|
+
190 PRINT "DESTROYED!": PRINT: PRINT "GOOD LUCK!!":PRINT: PRINT
|
14
|
+
220 A=RND(1)*2*P: B=RND(1)*2*P: Q=INT(A*R1): W=INT(B*R1)
|
15
|
+
260 PRINT "RADIANS FROM X AXIS =";A;" FROM Z AXIS =";B
|
16
|
+
280 P1=100000*RND(1)+RND(1): X=SIN(B)*COS(A)*P1: Y=SIN(B)*SIN(A)*P1
|
17
|
+
290 Z=COS(B)*P1
|
18
|
+
340 PRINT "TARGET SIGHTED: APPROXIMATE COORDINATES: X=";X;" Y=";Y;" Z=";Z
|
19
|
+
345 R=R+1: IF R>5 THEN 390
|
20
|
+
350 ON R GOTO 355,360,365,370,375
|
21
|
+
355 P3=INT(P1*.05)*20: GOTO 390
|
22
|
+
360 P3=INT(P1*.1)*10: GOTO 390
|
23
|
+
365 P3=INT(P1*.5)*2: GOTO 390
|
24
|
+
370 P3=INT(P1): GOTO 390
|
25
|
+
375 P3=P1
|
26
|
+
390 PRINT " ESTIMATED DISTANCE:";P3
|
27
|
+
400 PRINT:PRINT "INPUT ANGLE DEVIATION FROM X, DEVIATION FROM Z, DISTANCE";
|
28
|
+
405 INPUT A1,B1,P2
|
29
|
+
410 PRINT: IF P2<20 THEN PRINT "YOU BLEW YOURSELF UP!!": GOTO 580
|
30
|
+
420 A1=A1/R1: B1=B1/R1: PRINT "RADIANS FROM X AXIS =";A1;" ";
|
31
|
+
425 PRINT "FROM Z AXIS =";B1
|
32
|
+
480 X1=P2*SIN(B1)*COS(A1): Y1=P2*SIN(B1)*SIN(A1): Z1=P2*COS(B1)
|
33
|
+
510 D=((X1-X)^2+(Y1-Y)^2+(Z1-Z)^2)^(1/2)
|
34
|
+
520 IF D>20 THEN 670
|
35
|
+
530 PRINT: PRINT " * * * HIT * * * TARGET IS NON-FUNCTIONAL": PRINT
|
36
|
+
550 PRINT "DISTANCE OF EXPLOSION FROM TARGET WAS";D;"KILOMETERS."
|
37
|
+
570 PRINT: PRINT "MISSION ACCOMPLISHED IN ";R;" SHOTS."
|
38
|
+
580 R=0: FOR I=1 TO 5: PRINT: NEXT I: PRINT "NEXT TARGET...": PRINT
|
39
|
+
590 GOTO 220
|
40
|
+
670 X2=X1-X: Y2=Y1-Y: Z2=Z1-Z: IF X2<0 THEN 730
|
41
|
+
710 PRINT "SHOT IN FRONT OF TARGET";X2;"KILOMETERS.": GOTO 740
|
42
|
+
730 PRINT "SHOT BEHIND TARGET";-X2;"KILOMETERS."
|
43
|
+
740 IF Y2<0 THEN 770
|
44
|
+
750 PRINT "SHOT TO LEFT OF TARGET";Y2;"KILOMETERS.": GOTO 780
|
45
|
+
770 PRINT "SHOT TO RIGHT OF TARGET";-Y2;"KILOMETERS."
|
46
|
+
780 IF Z2<0 THEN 810
|
47
|
+
790 PRINT "SHOT ABOVE TARGET";Z2;"KILOMETERS.": GOTO 820
|
48
|
+
810 PRINT "SHOT BELOW TARGET";-Z2;"KILOMETERS."
|
49
|
+
820 PRINT "APPROX POSITION OF EXPLOSION: X=";X1;" Y=";Y1;" Z=";Z1
|
50
|
+
830 PRINT " DISTANCE FROM TARGET =";D: PRINT: PRINT: PRINT: GOTO 345
|
51
|
+
999 END
|
@@ -0,0 +1,39 @@
|
|
1
|
+
TARGET
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
YOU ARE THE WEAPONS OFFICER ON THE STARSHIP ENTERPRISE
|
7
|
+
AND THIS IS A TEST TO SEE HOW ACCURATE A SHOT YOU
|
8
|
+
ARE IN A THREE-DIMENSIONAL RANGE. YOU WILL BE TOLD
|
9
|
+
THE RADIAN OFFSET FOR THE X AND Z AXES, THE LOCATION
|
10
|
+
OF THE TARGET IN THREE DIMENSIONAL RECTANGULAR COORDINATES,
|
11
|
+
THE APPROXIMATE NUMBER OF DEGREES FROM THE X AND Z
|
12
|
+
AXES, AND THE APPROXIMATE DISTANCE TO THE TARGET.
|
13
|
+
YOU WILL THEN PROCEEED TO SHOOT AT THE TARGET UNTIL IT IS
|
14
|
+
DESTROYED!
|
15
|
+
|
16
|
+
GOOD LUCK!!
|
17
|
+
|
18
|
+
|
19
|
+
RADIANS FROM X AXIS = 3.448294 FROM Z AXIS = 4.493664
|
20
|
+
TARGET SIGHTED: APPROXIMATE COORDINATES: X= 56094.95 Y= 17764.95 Z=-13079.22
|
21
|
+
ESTIMATED DISTANCE: 60270
|
22
|
+
|
23
|
+
INPUT ANGLE DEVIATION FROM X, DEVIATION FROM Z, DISTANCE? 0
|
24
|
+
Too few items, try again
|
25
|
+
? 0,10,20
|
26
|
+
|
27
|
+
RADIANS FROM X AXIS = 0 FROM Z AXIS = 0.1745323
|
28
|
+
SHOT BEHIND TARGET 56091.48 KILOMETERS.
|
29
|
+
SHOT TO RIGHT OF TARGET 17764.95 KILOMETERS.
|
30
|
+
SHOT ABOVE TARGET 13098.91 KILOMETERS.
|
31
|
+
APPROX POSITION OF EXPLOSION: X= 3.47295 Y= 0 Z= 19.69616
|
32
|
+
DISTANCE FROM TARGET = 60277.93
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
ESTIMATED DISTANCE: 60276
|
37
|
+
|
38
|
+
INPUT ANGLE DEVIATION FROM X, DEVIATION FROM Z, DISTANCE?
|
39
|
+
Error on line 405: No more input
|
@@ -0,0 +1,69 @@
|
|
1
|
+
10 PRINT TAB(30);"TIC TAC TOE"
|
2
|
+
20 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
30 PRINT:PRINT:PRINT
|
4
|
+
50 REM
|
5
|
+
100 REM THIS PROGRAM PLAYS TIC TAC TOE
|
6
|
+
110 REM THE MACHINE GOES FIRST
|
7
|
+
120 PRINT "THE GAME BOARD IS NUMBERED:": PRINT
|
8
|
+
130 PRINT "1 2 3": PRINT "8 9 4": PRINT "7 6 5"
|
9
|
+
140 PRINT
|
10
|
+
150 REM
|
11
|
+
160 REM
|
12
|
+
170 REM
|
13
|
+
180 DEF FNM(X)=X-8*INT((X-1)/8)
|
14
|
+
190 REM
|
15
|
+
200 REM MAIN PROGRAM
|
16
|
+
210 PRINT
|
17
|
+
220 PRINT
|
18
|
+
230 A=9
|
19
|
+
240 M=A
|
20
|
+
250 GOSUB 650
|
21
|
+
260 P=M
|
22
|
+
270 B=FNM(P+1)
|
23
|
+
280 M=B
|
24
|
+
290 GOSUB 650
|
25
|
+
300 Q=M
|
26
|
+
310 IF Q=FNM(B+4) THEN 360
|
27
|
+
320 C=FNM(B+4)
|
28
|
+
330 M=C
|
29
|
+
340 GOSUB 700
|
30
|
+
350 GOTO 730
|
31
|
+
360 C=FNM(B+2)
|
32
|
+
370 M=C
|
33
|
+
380 GOSUB 650
|
34
|
+
390 R=M
|
35
|
+
400 IF R=FNM(C+4) THEN 450
|
36
|
+
410 D=FNM(C+4)
|
37
|
+
420 M=D
|
38
|
+
430 GOSUB 700
|
39
|
+
440 GOTO 730
|
40
|
+
450 IF P/2<>INT(P/2) THEN 500
|
41
|
+
460 D=FNM(C+7)
|
42
|
+
470 M=D
|
43
|
+
480 GOSUB 700
|
44
|
+
490 GOTO 730
|
45
|
+
500 D=FNM(C+3)
|
46
|
+
510 M=D
|
47
|
+
520 GOSUB 650
|
48
|
+
530 S=M
|
49
|
+
540 IF S=FNM(D+4) THEN 590
|
50
|
+
550 E=FNM(D+4)
|
51
|
+
560 M=E
|
52
|
+
570 GOSUB 700
|
53
|
+
580 REM
|
54
|
+
590 E=FNM(D+6)
|
55
|
+
600 M=E
|
56
|
+
610 GOSUB 700
|
57
|
+
620 PRINT "THE GAME IS A DRAW."
|
58
|
+
630 GOTO 210
|
59
|
+
640 REM
|
60
|
+
650 GOSUB 700
|
61
|
+
660 PRINT "YOUR MOVE";
|
62
|
+
670 INPUT M
|
63
|
+
680 RETURN
|
64
|
+
700 PRINT "COMPUTER MOVES";M
|
65
|
+
710 RETURN
|
66
|
+
720 REM
|
67
|
+
730 PRINT "AND WINS ********"
|
68
|
+
740 GOTO 210
|
69
|
+
750 END
|
@@ -0,0 +1,49 @@
|
|
1
|
+
TIC TAC TOE
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
THE GAME BOARD IS NUMBERED:
|
7
|
+
|
8
|
+
1 2 3
|
9
|
+
8 9 4
|
10
|
+
7 6 5
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
COMPUTER MOVES 9
|
15
|
+
YOUR MOVE? 7
|
16
|
+
COMPUTER MOVES 8
|
17
|
+
YOUR MOVE? 4
|
18
|
+
COMPUTER MOVES 2
|
19
|
+
YOUR MOVE? 6
|
20
|
+
COMPUTER MOVES 5
|
21
|
+
YOUR MOVE? 1
|
22
|
+
COMPUTER MOVES 3
|
23
|
+
THE GAME IS A DRAW.
|
24
|
+
|
25
|
+
|
26
|
+
COMPUTER MOVES 9
|
27
|
+
YOUR MOVE? 1
|
28
|
+
COMPUTER MOVES 2
|
29
|
+
YOUR MOVE? 6
|
30
|
+
COMPUTER MOVES 4
|
31
|
+
YOUR MOVE? 8
|
32
|
+
COMPUTER MOVES 7
|
33
|
+
YOUR MOVE? 5
|
34
|
+
COMPUTER MOVES 3
|
35
|
+
COMPUTER MOVES 5
|
36
|
+
THE GAME IS A DRAW.
|
37
|
+
|
38
|
+
|
39
|
+
COMPUTER MOVES 9
|
40
|
+
YOUR MOVE? 9
|
41
|
+
COMPUTER MOVES 2
|
42
|
+
YOUR MOVE? 5
|
43
|
+
COMPUTER MOVES 6
|
44
|
+
AND WINS ********
|
45
|
+
|
46
|
+
|
47
|
+
COMPUTER MOVES 9
|
48
|
+
YOUR MOVE?
|
49
|
+
Error on line 670: No more input
|