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,181 @@
|
|
1
|
+
1 PRINT TAB(32);"FOOTBALL"
|
2
|
+
2 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
3 PRINT:PRINT:PRINT
|
4
|
+
100 REM
|
5
|
+
120 DIM A(20),B(20),C(40),H(2),T(2),W(2),X(2),Y(2),Z(2)
|
6
|
+
130 DIM M$(2),D(2),P$(20)
|
7
|
+
140 PRINT "PRESENTING N.F.U. FOOTBALL (NO FORTRAN USED)"
|
8
|
+
145 PRINT:PRINT
|
9
|
+
150 INPUT "DO YOU WANT INSTRUCTIONS";A$
|
10
|
+
160 IF A$="NO" THEN 290
|
11
|
+
165 IF A$<>"YES" THEN 150
|
12
|
+
170 PRINT "THIS IS A FOOTBALL GAME FOR TWO TEAMS IN WHICH PLAYERS MUST"
|
13
|
+
180 PRINT "PREPARE A TAPE WITH A DATA STATEMENT (1770 FOR TEAM 1,"
|
14
|
+
190 PRINT "1780 FOR TEAM 2) IN WHICH EACH TEAM SCRAMBLES NOS. 1-20"
|
15
|
+
195 PRINT "THESE NUMBERS ARE THEN ASSIGNED TO TWENTY GIVEN PLAYS."
|
16
|
+
200 PRINT"A LIST OF NOS. AND THEIR PLAYS IS PROVIDED WITH"
|
17
|
+
210 PRINT "BOTH TEAMS HAVING THE SAME PLAYS. THE MORE SIMILAR THE"
|
18
|
+
220 PRINT "PLAYS THE LESS YARDAGE GAINED. SCORES ARE GIVEN"
|
19
|
+
223 PRINT "WHENEVER SCORES ARE MADE. SCORES MAY ALSO BE OBTAINED"
|
20
|
+
225 PRINT "BY INPUTTING 99,99 FOR PLAY NOS. TO PUNT OR ATTEMPT A"
|
21
|
+
227 PRINT "FIELD GOAL, INPUT 77,77 FOR PLAY NUMBERS. QUESTIONS WILL BE"
|
22
|
+
230 PRINT "ASKED THEN. ON 4TH DOWN, YOU WILL ALSO BE ASKED WHETHER"
|
23
|
+
240 PRINT "YOU WANT TO PUNT OR ATTEMPT A FIELD GOAL. IF THE ANSWER TO"
|
24
|
+
250 PRINT "BOTH QUESTIONS IS NO IT WILL BE ASSUMED YOU WANT TO"
|
25
|
+
260 PRINT "TRY AND GAIN YARDAGE. ANSWER ALL QUESTIONS YES OR NO."
|
26
|
+
270 PRINT "THE GAME IS PLAYED UNTIL PLAYERS TERMINATE (CONTROL-C)."
|
27
|
+
280 PRINT "PLEASE PREPARE A TAPE AND RUN.": STOP
|
28
|
+
290 PRINT:PRINT "PLEASE INPUT SCORE LIMIT ON GAME";:INPUT E
|
29
|
+
300 FOR I=1 TO 40: READ N: IF I>20 THEN 350
|
30
|
+
330 A(N)=I: GOTO 360
|
31
|
+
350 B(N)=I-20
|
32
|
+
360 C(I)=N: NEXT I
|
33
|
+
370 FOR I=1 TO 20: READ P$(I): NEXT I
|
34
|
+
380 L=0: T=1
|
35
|
+
410 PRINT "TEAM";T;"PLAY CHART"
|
36
|
+
420 PRINT "NO. PLAY"
|
37
|
+
430 FOR I=1 TO 20
|
38
|
+
440 REM
|
39
|
+
450 PRINT C(I+L);TAB(6);P$(I)
|
40
|
+
460 NEXT I
|
41
|
+
630 L=L+20:T=2
|
42
|
+
640 PRINT
|
43
|
+
650 PRINT "TEAR OFF HERE----------------------------------------------"
|
44
|
+
660 FOR X=1 TO 11: PRINT: NEXT X
|
45
|
+
670 FOR Z=1 TO 3000: NEXT Z
|
46
|
+
680 IF L=20 THEN 410
|
47
|
+
690 D(1)=0: D(2)=3: M$(1)="--->": M$(2)="<---"
|
48
|
+
700 H(1)=0: H(2)=0: T(1)=2: T(2)=1
|
49
|
+
710 W(1)=-1: W(2)=1: X(1)=100: X(2)=0
|
50
|
+
720 Y(1)=1: Y(2)=-1: Z(1)=0: Z(2)=100
|
51
|
+
725 GOSUB 1910
|
52
|
+
730 PRINT "TEAM 1 DEFENDS 0 YD GOAL -- TEAM 2 DEFENDS 100 YD GOAL."
|
53
|
+
740 T=INT(2*RND(1)+1)
|
54
|
+
760 PRINT: PRINT "THE COIN IS FLIPPED"
|
55
|
+
765 P=X(T)-Y(T)*40
|
56
|
+
770 GOSUB 1860: PRINT : PRINT "TEAM";T;"RECEIVES KICK-OFF"
|
57
|
+
780 K=INT(26*RND(1)+40)
|
58
|
+
790 P=P-Y(T)*K
|
59
|
+
794 IF W(T)*P<Z(T)+10 THEN 810
|
60
|
+
795 PRINT: PRINT "BALL WENT OUT OF ENDZONE --AUTOMATIC TOUCHBACK--"
|
61
|
+
796 GOTO 870
|
62
|
+
810 PRINT "BALL WENT";K;"YARDS. NOW ON";P:GOSUB 1900
|
63
|
+
830 PRINT "TEAM";T;"DO YOU WANT TO RUNBACK";:INPUT A$
|
64
|
+
840 IF A$="YES" THEN 1430
|
65
|
+
845 IF A$<>"NO" THEN 830
|
66
|
+
850 IF W(T)*P<Z(T) THEN 880
|
67
|
+
870 P=Z(T)-W(T)*20
|
68
|
+
880 D=1: S=P
|
69
|
+
885 FOR I=1 TO 72: PRINT "=";: NEXT I
|
70
|
+
890 PRINT: PRINT "TEAM";T;"DOWN";D;"ON";P
|
71
|
+
893 IF D<>1 THEN 900
|
72
|
+
895 IF Y(T)*(P+Y(T)*10)>=X(T) THEN 898
|
73
|
+
897 C=4: GOTO 900
|
74
|
+
898 C=8
|
75
|
+
900 IF C=8 THEN 904
|
76
|
+
901 PRINT TAB(27);10-(Y(T)*P-Y(T)*S);"YARDS TO 1ST DOWN"
|
77
|
+
902 GOTO 910
|
78
|
+
904 PRINT TAB(27);X(T)-Y(T)*P;"YARDS"
|
79
|
+
910 GOSUB 1900: IF D=4 THEN 1180
|
80
|
+
920 REM
|
81
|
+
930 U=INT(3*RND(0)-1): GOTO 940
|
82
|
+
936 PRINT "ILLEGAL PLAY NUMBER, CHECK AND"
|
83
|
+
940 PRINT "INPUT OFFENSIVE PLAY, DEFENSIVE PLAY";
|
84
|
+
950 IF T=2 THEN 970
|
85
|
+
960 INPUT P1,P2: GOTO 975
|
86
|
+
970 INPUT P2,P1
|
87
|
+
975 IF P1=77 THEN 1180
|
88
|
+
980 IF P1>20 THEN 1800
|
89
|
+
985 IF P1<1 THEN 1800
|
90
|
+
990 IF P2>20 THEN 1800
|
91
|
+
992 IF P2<1 THEN 1800
|
92
|
+
995 P1=INT(P1): P2=INT(P2)
|
93
|
+
1000 Y=INT(ABS(A(P1)-B(P2))/19*((X(T)-Y(T)*P+25)*RND(1)-15))
|
94
|
+
1005 PRINT: IF T=2 THEN 1015
|
95
|
+
1010 IF A(P1)<11 THEN 1048
|
96
|
+
1012 GOTO 1020
|
97
|
+
1015 IF B(P2)<11 THEN 1048
|
98
|
+
1020 IF U<>0 THEN 1035
|
99
|
+
1025 PRINT "PASS INCOMPLETE TEAM";T
|
100
|
+
1030 Y=0: GOTO 1050
|
101
|
+
1035 G=RND(1): IF G>.025 THEN 1040
|
102
|
+
1037 IF Y>2 THEN 1045
|
103
|
+
1040 PRINT "QUARTERBACK SCRAMBLED": GOTO 1050
|
104
|
+
1045 PRINT "PASS COMPLETED": GOTO 1050
|
105
|
+
1048 PRINT "THE BALL WAS RUN"
|
106
|
+
1050 P=P-W(T)*Y
|
107
|
+
1060 PRINT: PRINT "NET YARDS GAINED ON DOWN";D;"ARE ";Y
|
108
|
+
1070 G=RND(1): IF G>.025 THEN 1110
|
109
|
+
1080 PRINT: PRINT "** LOSS OF POSSESSION FROM TEAM";T;"TO TEAM";T(T)
|
110
|
+
1100 GOSUB 1850: PRINT: T=T(T): GOTO 830
|
111
|
+
1110 IF Y(T)*P>=X(T) THEN 1320
|
112
|
+
1120 IF W(T)*P>=Z(T) THEN 1230
|
113
|
+
1130 IF Y(T)*P-Y(T)*S>=10 THEN 880
|
114
|
+
1140 D=D+1: IF D<>5 THEN 885
|
115
|
+
1160 PRINT: PRINT "CONVERSION UNSUCCESSFUL TEAM";T:T=T(T)
|
116
|
+
1170 GOSUB 1850: GOTO 880
|
117
|
+
1180 PRINT "DOES TEAM";T;"WANT TO PUNT";: INPUT A$
|
118
|
+
1185 IF A$="NO" THEN 1200
|
119
|
+
1187 IF A$<>"YES" THEN 1180
|
120
|
+
1190 PRINT:PRINT "TEAM";T;"WILL PUNT": G=RND(1): IF G<.025 THEN 1080
|
121
|
+
1195 GOSUB 1850: K=INT(25*RND(1)+35): T=T(T): GOTO 790
|
122
|
+
1200 PRINT "DOES TEAM";T;"WANT TO ATTEMPT A FIELD GOAL";: INPUT A$
|
123
|
+
1210 IF A$="YES" THEN 1640
|
124
|
+
1215 IF A$<>"NO" THEN 1200
|
125
|
+
1217 GOTO 920
|
126
|
+
1230 PRINT: PRINT "SAFETY AGAINST TEAM";T;"**********************OH-OH"
|
127
|
+
1240 H(T(T))=H(T(T))+2: GOSUB 1810
|
128
|
+
1280 PRINT"TEAM";T;"DO YOU WANT TO PUNT INSTEAD OF A KICKOFF";:INPUT A$
|
129
|
+
1290 P=Z(T)-W(T)*20: IF A$="YES" THEN 1190
|
130
|
+
1320 PRINT: PRINT "TOUCHDOWN BY TEAM";T;"*********************YEA TEAM"
|
131
|
+
1340 Q=7: G=RND(1): IF G>.1 THEN 1380
|
132
|
+
1360 Q=6: PRINT "EXTRA POINT NO GOOD": GOTO 1390
|
133
|
+
1380 PRINT "EXTRA POINT GOOD"
|
134
|
+
1390 H(T)=H(T)+Q: GOSUB 1810
|
135
|
+
1420 T=T(T): GOTO 765
|
136
|
+
1430 K=INT(9*RND(0)+1)
|
137
|
+
1440 R=INT(((X(T)-Y(T)*P+25)*RND(1)-15)/K)
|
138
|
+
1460 P=P-W(T)*R
|
139
|
+
1480 PRINT:PRINT "RUNBACK TEAM";T;R;"YARDS"
|
140
|
+
1485 G=RND(1): IF G<.025 THEN 1080
|
141
|
+
1490 IF Y(T)*P>=X(T) THEN 1320
|
142
|
+
1500 IF W(T)*P>=Z(T) THEN 1230
|
143
|
+
1510 GOTO 880
|
144
|
+
1640 PRINT: PRINT "TEAM";T;"WILL ATTEMPT A FIELD GOAL"
|
145
|
+
1645 G=RND(1): IF G<.025 THEN 1080
|
146
|
+
1650 F=INT(35*RND(1)+20)
|
147
|
+
1660 PRINT: PRINT "KICK IS";F;"YARDS LONG"
|
148
|
+
1680 P=P-W(T)*F: G=RND(1)
|
149
|
+
1690 IF G<.35 THEN 1735
|
150
|
+
1700 IF Y(T)*P<X(T) THEN 1740
|
151
|
+
1710 PRINT "FIELD GOAL GOOD FOR TEAM";T;"*********************YEA"
|
152
|
+
1720 Q=3: GOTO 1390
|
153
|
+
1735 PRINT "BALL WENT WIDE"
|
154
|
+
1740 PRINT "FIELD GOAL UNSUCCESFUL TEAM";T;"-----------------TOO BAD"
|
155
|
+
1742 GOSUB 1850: IF Y(T)*P<X(T)+10 THEN 1745
|
156
|
+
1744 T=T(T): GOTO 794
|
157
|
+
1745 PRINT: PRINT "BALL NOW ON";P
|
158
|
+
1750 T=T(T): GOSUB 1900: GOTO 830
|
159
|
+
1770 DATA 17,8,4,14,19,3,10,1,7,11,15,9,5,20,13,18,16,2,12,6
|
160
|
+
1780 DATA 20,2,17,5,8,18,12,11,1,4,19,14,10,7,9,15,6,13,16,3
|
161
|
+
1790 DATA "PITCHOUT","TRIPLE REVERSE","DRAW","QB SNEAK","END AROUND"
|
162
|
+
1792 DATA "DOUBLE REVERSE","LEFT SWEEP","RIGHT SWEEP","OFF TACKLE"
|
163
|
+
1794 DATA "WISHBONE OPTION","FLARE PASS","SCREEN PASS"
|
164
|
+
1796 DATA "ROLL OUT OPTION","RIGHT CURL","LEFT CURL","WISHBONE OPTION"
|
165
|
+
1798 DATA "SIDELINE PASS","HALF-BACK OPTION","RAZZLE-DAZZLE","BOMB!!!!"
|
166
|
+
1800 IF P1<>99 THEN 936
|
167
|
+
1810 PRINT: PRINT "TEAM 1 SCORE IS";H(1)
|
168
|
+
1820 PRINT "TEAM 2 SCORE IS";H(2): PRINT
|
169
|
+
1825 IF H(T)<E THEN 1830
|
170
|
+
1827 PRINT "TEAM";T;"WINS*******************": GOTO 2000
|
171
|
+
1830 IF P1=99 THEN 940
|
172
|
+
1835 RETURN
|
173
|
+
1850 PRINT
|
174
|
+
1860 FOR X=1 TO 72: PRINT "+";: NEXT X: PRINT
|
175
|
+
1870 RETURN
|
176
|
+
1900 PRINT TAB(D(T)+5+P/2);M$(T)
|
177
|
+
1910 PRINT "TEAM 1 [0 10 20 30 40 50 60 70 80 90";
|
178
|
+
1915 PRINT " 100] TEAM 2"
|
179
|
+
1920 PRINT
|
180
|
+
1930 RETURN
|
181
|
+
2000 END
|
@@ -0,0 +1,318 @@
|
|
1
|
+
FOOTBALL
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
PRESENTING N.F.U. FOOTBALL (NO FORTRAN USED)
|
7
|
+
|
8
|
+
|
9
|
+
DO YOU WANT INSTRUCTIONS? NO
|
10
|
+
|
11
|
+
PLEASE INPUT SCORE LIMIT ON GAME? 6
|
12
|
+
TEAM 1 PLAY CHART
|
13
|
+
NO. PLAY
|
14
|
+
17 PITCHOUT
|
15
|
+
8 TRIPLE REVERSE
|
16
|
+
4 DRAW
|
17
|
+
14 QB SNEAK
|
18
|
+
19 END AROUND
|
19
|
+
3 DOUBLE REVERSE
|
20
|
+
10 LEFT SWEEP
|
21
|
+
1 RIGHT SWEEP
|
22
|
+
7 OFF TACKLE
|
23
|
+
11 WISHBONE OPTION
|
24
|
+
15 FLARE PASS
|
25
|
+
9 SCREEN PASS
|
26
|
+
5 ROLL OUT OPTION
|
27
|
+
20 RIGHT CURL
|
28
|
+
13 LEFT CURL
|
29
|
+
18 WISHBONE OPTION
|
30
|
+
16 SIDELINE PASS
|
31
|
+
2 HALF-BACK OPTION
|
32
|
+
12 RAZZLE-DAZZLE
|
33
|
+
6 BOMB!!!!
|
34
|
+
|
35
|
+
TEAR OFF HERE----------------------------------------------
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
TEAM 2 PLAY CHART
|
48
|
+
NO. PLAY
|
49
|
+
20 PITCHOUT
|
50
|
+
2 TRIPLE REVERSE
|
51
|
+
17 DRAW
|
52
|
+
5 QB SNEAK
|
53
|
+
8 END AROUND
|
54
|
+
18 DOUBLE REVERSE
|
55
|
+
12 LEFT SWEEP
|
56
|
+
11 RIGHT SWEEP
|
57
|
+
1 OFF TACKLE
|
58
|
+
4 WISHBONE OPTION
|
59
|
+
19 FLARE PASS
|
60
|
+
14 SCREEN PASS
|
61
|
+
10 ROLL OUT OPTION
|
62
|
+
7 RIGHT CURL
|
63
|
+
9 LEFT CURL
|
64
|
+
15 WISHBONE OPTION
|
65
|
+
6 SIDELINE PASS
|
66
|
+
13 HALF-BACK OPTION
|
67
|
+
16 RAZZLE-DAZZLE
|
68
|
+
3 BOMB!!!!
|
69
|
+
|
70
|
+
TEAR OFF HERE----------------------------------------------
|
71
|
+
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
|
82
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
83
|
+
|
84
|
+
TEAM 1 DEFENDS 0 YD GOAL -- TEAM 2 DEFENDS 100 YD GOAL.
|
85
|
+
|
86
|
+
THE COIN IS FLIPPED
|
87
|
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
88
|
+
|
89
|
+
TEAM 2 RECEIVES KICK-OFF
|
90
|
+
BALL WENT 58 YARDS. NOW ON 98
|
91
|
+
<---
|
92
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
93
|
+
|
94
|
+
TEAM 2 DO YOU WANT TO RUNBACK? YES
|
95
|
+
|
96
|
+
RUNBACK TEAM 2 8 YARDS
|
97
|
+
========================================================================
|
98
|
+
TEAM 2 DOWN 1 ON 90
|
99
|
+
10 YARDS TO 1ST DOWN
|
100
|
+
<---
|
101
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
102
|
+
|
103
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 1,1
|
104
|
+
|
105
|
+
THE BALL WAS RUN
|
106
|
+
|
107
|
+
NET YARDS GAINED ON DOWN 1 ARE 1
|
108
|
+
========================================================================
|
109
|
+
TEAM 2 DOWN 2 ON 89
|
110
|
+
9 YARDS TO 1ST DOWN
|
111
|
+
<---
|
112
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
113
|
+
|
114
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 2,2
|
115
|
+
|
116
|
+
THE BALL WAS RUN
|
117
|
+
|
118
|
+
NET YARDS GAINED ON DOWN 2 ARE 29
|
119
|
+
========================================================================
|
120
|
+
TEAM 2 DOWN 1 ON 60
|
121
|
+
10 YARDS TO 1ST DOWN
|
122
|
+
<---
|
123
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
124
|
+
|
125
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
126
|
+
|
127
|
+
QUARTERBACK SCRAMBLED
|
128
|
+
|
129
|
+
NET YARDS GAINED ON DOWN 1 ARE 49
|
130
|
+
========================================================================
|
131
|
+
TEAM 2 DOWN 1 ON 11
|
132
|
+
10 YARDS TO 1ST DOWN
|
133
|
+
<---
|
134
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
135
|
+
|
136
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 4,4
|
137
|
+
|
138
|
+
THE BALL WAS RUN
|
139
|
+
|
140
|
+
NET YARDS GAINED ON DOWN 1 ARE 1
|
141
|
+
========================================================================
|
142
|
+
TEAM 2 DOWN 2 ON 10
|
143
|
+
9 YARDS TO 1ST DOWN
|
144
|
+
<---
|
145
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
146
|
+
|
147
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 5,5
|
148
|
+
|
149
|
+
THE BALL WAS RUN
|
150
|
+
|
151
|
+
NET YARDS GAINED ON DOWN 2 ARE 8
|
152
|
+
========================================================================
|
153
|
+
TEAM 2 DOWN 3 ON 2
|
154
|
+
1 YARDS TO 1ST DOWN
|
155
|
+
<---
|
156
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
157
|
+
|
158
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 6,6
|
159
|
+
|
160
|
+
QUARTERBACK SCRAMBLED
|
161
|
+
|
162
|
+
NET YARDS GAINED ON DOWN 3 ARE -2
|
163
|
+
========================================================================
|
164
|
+
TEAM 2 DOWN 4 ON 4
|
165
|
+
3 YARDS TO 1ST DOWN
|
166
|
+
<---
|
167
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
168
|
+
|
169
|
+
DOES TEAM 2 WANT TO PUNT? NO
|
170
|
+
DOES TEAM 2 WANT TO ATTEMPT A FIELD GOAL? YES
|
171
|
+
|
172
|
+
TEAM 2 WILL ATTEMPT A FIELD GOAL
|
173
|
+
|
174
|
+
KICK IS 50 YARDS LONG
|
175
|
+
FIELD GOAL GOOD FOR TEAM 2 *********************YEA
|
176
|
+
|
177
|
+
TEAM 1 SCORE IS 0
|
178
|
+
TEAM 2 SCORE IS 3
|
179
|
+
|
180
|
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
181
|
+
|
182
|
+
TEAM 1 RECEIVES KICK-OFF
|
183
|
+
BALL WENT 60 YARDS. NOW ON 0
|
184
|
+
--->
|
185
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
186
|
+
|
187
|
+
TEAM 1 DO YOU WANT TO RUNBACK? YES
|
188
|
+
|
189
|
+
RUNBACK TEAM 1 5 YARDS
|
190
|
+
========================================================================
|
191
|
+
TEAM 1 DOWN 1 ON 5
|
192
|
+
10 YARDS TO 1ST DOWN
|
193
|
+
--->
|
194
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
195
|
+
|
196
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 1,1
|
197
|
+
|
198
|
+
THE BALL WAS RUN
|
199
|
+
|
200
|
+
NET YARDS GAINED ON DOWN 1 ARE -1
|
201
|
+
========================================================================
|
202
|
+
TEAM 1 DOWN 2 ON 4
|
203
|
+
11 YARDS TO 1ST DOWN
|
204
|
+
--->
|
205
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
206
|
+
|
207
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 2,2
|
208
|
+
|
209
|
+
PASS INCOMPLETE TEAM 1
|
210
|
+
|
211
|
+
NET YARDS GAINED ON DOWN 2 ARE 0
|
212
|
+
========================================================================
|
213
|
+
TEAM 1 DOWN 3 ON 4
|
214
|
+
11 YARDS TO 1ST DOWN
|
215
|
+
--->
|
216
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
217
|
+
|
218
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
219
|
+
|
220
|
+
THE BALL WAS RUN
|
221
|
+
|
222
|
+
NET YARDS GAINED ON DOWN 3 ARE 35
|
223
|
+
========================================================================
|
224
|
+
TEAM 1 DOWN 1 ON 39
|
225
|
+
10 YARDS TO 1ST DOWN
|
226
|
+
--->
|
227
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
228
|
+
|
229
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
230
|
+
|
231
|
+
THE BALL WAS RUN
|
232
|
+
|
233
|
+
NET YARDS GAINED ON DOWN 1 ARE 5
|
234
|
+
========================================================================
|
235
|
+
TEAM 1 DOWN 2 ON 44
|
236
|
+
5 YARDS TO 1ST DOWN
|
237
|
+
--->
|
238
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
239
|
+
|
240
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
241
|
+
|
242
|
+
THE BALL WAS RUN
|
243
|
+
|
244
|
+
NET YARDS GAINED ON DOWN 2 ARE 16
|
245
|
+
========================================================================
|
246
|
+
TEAM 1 DOWN 1 ON 60
|
247
|
+
10 YARDS TO 1ST DOWN
|
248
|
+
--->
|
249
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
250
|
+
|
251
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
252
|
+
|
253
|
+
THE BALL WAS RUN
|
254
|
+
|
255
|
+
NET YARDS GAINED ON DOWN 1 ARE -11
|
256
|
+
========================================================================
|
257
|
+
TEAM 1 DOWN 2 ON 49
|
258
|
+
21 YARDS TO 1ST DOWN
|
259
|
+
--->
|
260
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
261
|
+
|
262
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
263
|
+
|
264
|
+
THE BALL WAS RUN
|
265
|
+
|
266
|
+
NET YARDS GAINED ON DOWN 2 ARE 23
|
267
|
+
========================================================================
|
268
|
+
TEAM 1 DOWN 1 ON 72
|
269
|
+
10 YARDS TO 1ST DOWN
|
270
|
+
--->
|
271
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
272
|
+
|
273
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
274
|
+
|
275
|
+
THE BALL WAS RUN
|
276
|
+
|
277
|
+
NET YARDS GAINED ON DOWN 1 ARE 25
|
278
|
+
========================================================================
|
279
|
+
TEAM 1 DOWN 1 ON 97
|
280
|
+
3 YARDS
|
281
|
+
--->
|
282
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
283
|
+
|
284
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
285
|
+
|
286
|
+
THE BALL WAS RUN
|
287
|
+
|
288
|
+
NET YARDS GAINED ON DOWN 1 ARE -4
|
289
|
+
========================================================================
|
290
|
+
TEAM 1 DOWN 2 ON 93
|
291
|
+
7 YARDS
|
292
|
+
--->
|
293
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
294
|
+
|
295
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
296
|
+
|
297
|
+
THE BALL WAS RUN
|
298
|
+
|
299
|
+
NET YARDS GAINED ON DOWN 2 ARE 5
|
300
|
+
========================================================================
|
301
|
+
TEAM 1 DOWN 3 ON 98
|
302
|
+
2 YARDS
|
303
|
+
--->
|
304
|
+
TEAM 1 [0 10 20 30 40 50 60 70 80 90 100] TEAM 2
|
305
|
+
|
306
|
+
INPUT OFFENSIVE PLAY, DEFENSIVE PLAY? 3,3
|
307
|
+
|
308
|
+
THE BALL WAS RUN
|
309
|
+
|
310
|
+
NET YARDS GAINED ON DOWN 3 ARE 2
|
311
|
+
|
312
|
+
TOUCHDOWN BY TEAM 1 *********************YEA TEAM
|
313
|
+
EXTRA POINT GOOD
|
314
|
+
|
315
|
+
TEAM 1 SCORE IS 7
|
316
|
+
TEAM 2 SCORE IS 3
|
317
|
+
|
318
|
+
TEAM 1 WINS*******************
|
@@ -0,0 +1,170 @@
|
|
1
|
+
1 DIM F(4)
|
2
|
+
2 PRINT TAB(31);"FUR TRADER"
|
3
|
+
4 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
4
|
+
6 PRINT: PRINT: PRINT
|
5
|
+
15 GOSUB 1091
|
6
|
+
16 LET I=600
|
7
|
+
17 PRINT "DO YOU WISH TO TRADE FURS?"
|
8
|
+
18 GOSUB 1402
|
9
|
+
19 IF B$="YES" THEN 100
|
10
|
+
20 IF B$="YES " THEN 100
|
11
|
+
21 STOP
|
12
|
+
100 PRINT
|
13
|
+
101 PRINT "YOU HAVE $";I " SAVINGS."
|
14
|
+
102 PRINT "AND 190 FURS TO BEGIN THE EXPEDITION."
|
15
|
+
261 LET E1=INT((.15*RND(1)+.95)*10^2+.5)/10^2
|
16
|
+
262 LET B1=INT((.25*RND(1)+1.00)*10^2+.5)/10^2
|
17
|
+
300 PRINT
|
18
|
+
301 PRINT "YOUR 190 FURS ARE DISTRIBUTED AMONG THE FOLLOWING"
|
19
|
+
302 PRINT "KINDS OF PELTS: MINK, BEAVER, ERMINE AND FOX."
|
20
|
+
310 GOSUB 1430
|
21
|
+
315 RESTORE
|
22
|
+
330 FOR J=1 TO 4
|
23
|
+
332 READ B$
|
24
|
+
333 PRINT
|
25
|
+
335 PRINT "HOW MANY ";B$;" PELTS DO YOU HAVE";
|
26
|
+
338 INPUT F(J)
|
27
|
+
340 LET F(0)=F(1)+F(2)+F(3)+F(4)
|
28
|
+
342 IF F(0)=190 THEN 1100
|
29
|
+
344 IF F(0)>190 THEN 500
|
30
|
+
348 NEXT J
|
31
|
+
350 GOTO 1100
|
32
|
+
500 PRINT
|
33
|
+
501 PRINT "YOU MAY NOT HAVE THAT MANY FURS."
|
34
|
+
502 PRINT "DO NOT TRY TO CHEAT. I CAN ADD."
|
35
|
+
503 PRINT "YOU MUST START AGAIN."
|
36
|
+
504 GOTO 15
|
37
|
+
508 PRINT
|
38
|
+
511 PRINT "DO YOU WANT TO TRADE FURS NEXT YEAR?"
|
39
|
+
513 GOTO 18
|
40
|
+
1091 PRINT "YOU ARE THE LEADER OF A FRENCH FUR TRADING EXPEDITION IN "
|
41
|
+
1092 PRINT "1776 LEAVING THE LAKE ONTARIO AREA TO SELL FURS AND GET"
|
42
|
+
1093 PRINT "SUPPLIES FOR THE NEXT YEAR. YOU HAVE A CHOICE OF THREE"
|
43
|
+
1094 PRINT "FORTS AT WHICH YOU MAY TRADE. THE COST OF SUPPLIES"
|
44
|
+
1095 PRINT "AND THE AMOUNT YOU RECEIVE FOR YOUR FURS WILL DEPEND"
|
45
|
+
1096 PRINT "ON THE FORT THAT YOU CHOOSE."
|
46
|
+
1099 RETURN
|
47
|
+
1100 PRINT "YOU MAY TRADE YOUR FURS AT FORT 1, FORT 2,"
|
48
|
+
1102 PRINT "OR FORT 3. FORT 1 IS FORT HOCHELAGA (MONTREAL)"
|
49
|
+
1103 PRINT "AND IS UNDER THE PROTECTION OF THE FRENCH ARMY."
|
50
|
+
1104 PRINT "FORT 2 IS FORT STADACONA (QUEBEC) AND IS UNDER THE"
|
51
|
+
1105 PRINT "PROTECTION OF THE FRENCH ARMY. HOWEVER, YOU MUST"
|
52
|
+
1106 PRINT "MAKE A PORTAGE AND CROSS THE LACHINE RAPIDS."
|
53
|
+
1108 PRINT "FORT 3 IS FORT NEW YORK AND IS UNDER DUTCH CONTROL."
|
54
|
+
1109 PRINT "YOU MUST CROSS THROUGH IROQUOIS LAND."
|
55
|
+
1110 PRINT "ANSWER 1, 2, OR 3."
|
56
|
+
1111 INPUT B
|
57
|
+
1112 IF B=1 THEN 1120
|
58
|
+
1113 IF B=2 THEN 1135
|
59
|
+
1115 IF B=3 THEN 1147
|
60
|
+
1116 GOTO 1110
|
61
|
+
1120 PRINT "YOU HAVE CHOSEN THE EASIEST ROUTE. HOWEVER, THE FORT"
|
62
|
+
1121 PRINT "IS FAR FROM ANY SEAPORT. THE VALUE"
|
63
|
+
1122 PRINT "YOU RECEIVE FOR YOUR FURS WILL BE LOW AND THE COST"
|
64
|
+
1123 PRINT "OF SUPPLIES HIGHER THAN AT FORTS STADACONA OR NEW YORK."
|
65
|
+
1125 GOSUB 1400
|
66
|
+
1129 IF B$="YES" THEN 1110
|
67
|
+
1130 GOTO 1160
|
68
|
+
1135 PRINT "YOU HAVE CHOSEN A HARD ROUTE. IT IS, IN COMPARSION,"
|
69
|
+
1136 PRINT "HARDER THAN THE ROUTE TO HOCHELAGA BUT EASIER THAN"
|
70
|
+
1137 PRINT "THE ROUTE TO NEW YORK. YOU WILL RECEIVE AN AVERAGE VALUE"
|
71
|
+
1138 PRINT "FOR YOUR FURS AND THE COST OF YOUR SUPPLIES WILL BE AVERAGE."
|
72
|
+
1141 GOSUB 1400
|
73
|
+
1144 IF B$="YES" THEN 1110
|
74
|
+
1145 GOTO 1198
|
75
|
+
1147 PRINT "YOU HAVE CHOSEN THE MOST DIFFICULT ROUTE. AT"
|
76
|
+
1148 PRINT "FORT NEW YORK YOU WILL RECEIVE THE HIGHEST VALUE"
|
77
|
+
1149 PRINT "FOR YOUR FURS. THE COST OF YOUR SUPPLIES"
|
78
|
+
1150 PRINT "WILL BE LOWER THAN AT ALL THE OTHER FORTS."
|
79
|
+
1152 GOSUB 1400
|
80
|
+
1155 IF B$="YES" THEN 1110
|
81
|
+
1156 GOTO 1250
|
82
|
+
1160 LET I=I-160
|
83
|
+
1169 PRINT
|
84
|
+
1174 LET M1=INT((.2*RND(1)+.7)*10^2+.5)/10^2
|
85
|
+
1175 LET E1=INT((.2*RND(1)+.65)*10^2+.5)/10^2
|
86
|
+
1176 LET B1=INT((.2*RND(1)+.75)*10^2+.5)/10^2
|
87
|
+
1177 LET D1=INT((.2*RND(1)+.8)*10^2+.5)/10^2
|
88
|
+
1180 PRINT "SUPPLIES AT FORT HOCHELAGA COST $150.00."
|
89
|
+
1181 PRINT "YOUR TRAVEL EXPENSES TO HOCHELAGA WERE $10.00."
|
90
|
+
1190 GOTO 1410
|
91
|
+
1198 LET I=I-140
|
92
|
+
1201 PRINT
|
93
|
+
1205 LET M1=INT((.3*RND(1)+.85)*10^2+.5)/10^2
|
94
|
+
1206 LET E1=INT((.15*RND(1)+.8)*10^2+.5)/10^2
|
95
|
+
1207 LET B1=INT((.2*RND(1)+.9)*10^2+.5)/10^2
|
96
|
+
1209 LET P=INT(10*RND(1))+1
|
97
|
+
1210 IF P<=2 THEN 1216
|
98
|
+
1212 IF P<=6 THEN 1224
|
99
|
+
1213 IF P<=8 THEN 1226
|
100
|
+
1215 IF P<=10 THEN 1235
|
101
|
+
1216 LET F(2)=0
|
102
|
+
1218 PRINT "YOUR BEAVER WERE TOO HEAVY TO CARRY ACROSS"
|
103
|
+
1219 PRINT "THE PORTAGE. YOU HAD TO LEAVE THE PELTS, BUT FOUND"
|
104
|
+
1220 PRINT "THEM STOLEN WHEN YOU RETURNED."
|
105
|
+
1221 GOSUB 1244
|
106
|
+
1222 GOTO 1414
|
107
|
+
1224 PRINT "YOU ARRIVED SAFELY AT FORT STADACONA."
|
108
|
+
1225 GOTO 1239
|
109
|
+
1226 GOSUB 1430
|
110
|
+
1230 PRINT "YOUR CANOE UPSET IN THE LACHINE RAPIDS. YOU"
|
111
|
+
1231 PRINT "LOST ALL YOUR FURS."
|
112
|
+
1232 GOSUB 1244
|
113
|
+
1233 GOTO 1418
|
114
|
+
1235 LET F(4)=0
|
115
|
+
1237 PRINT "YOUR FOX PELTS WERE NOT CURED PROPERLY."
|
116
|
+
1238 PRINT "NO ONE WILL BUY THEM."
|
117
|
+
1239 GOSUB 1244
|
118
|
+
1240 GOTO 1410
|
119
|
+
1244 PRINT "SUPPLIES AT FORT STADACONA COST $125.00."
|
120
|
+
1246 PRINT "YOUR TRAVEL EXPENSES TO STADACONA WERE $15.00."
|
121
|
+
1248 RETURN
|
122
|
+
1250 LET I=I-105
|
123
|
+
1254 PRINT
|
124
|
+
1260 LET M1=INT((.15*RND(1)+1.05)*10^2+.5)/10^2
|
125
|
+
1263 LET D1=INT((.25*RND(1)+1.1)*10^2+.5)/10^2
|
126
|
+
1270 LET P=INT(10*RND(1))+1
|
127
|
+
1271 IF P<=2 THEN 1281
|
128
|
+
1272 IF P<=6 THEN 1291
|
129
|
+
1273 IF P<=8 THEN 1295
|
130
|
+
1274 IF P<=10 THEN 1306
|
131
|
+
1281 PRINT "YOU WERE ATTACKED BY A PARTY OF IROQUOIS."
|
132
|
+
1282 PRINT "ALL PEOPLE IN YOUR TRADING GROUP WERE"
|
133
|
+
1283 PRINT "KILLED. THIS ENDS THE GAME."
|
134
|
+
1284 STOP
|
135
|
+
1291 PRINT "YOU WERE LUCKY. YOU ARRIVED SAFELY"
|
136
|
+
1292 PRINT "AT FORT NEW YORK."
|
137
|
+
1293 GOTO 1311
|
138
|
+
1295 GOSUB 1430
|
139
|
+
1300 PRINT "YOU NARROWLY ESCAPED AN IROQUOIS RAIDING PARTY."
|
140
|
+
1301 PRINT "HOWEVER, YOU HAD TO LEAVE ALL YOUR FURS BEHIND."
|
141
|
+
1303 GOSUB 1320
|
142
|
+
1304 GOTO 1418
|
143
|
+
1306 LET B1=B1/2
|
144
|
+
1307 LET M1=M1/2
|
145
|
+
1308 PRINT "YOUR MINK AND BEAVER WERE DAMAGED ON YOUR TRIP."
|
146
|
+
1309 PRINT "YOU RECEIVE ONLY HALF THE CURRENT PRICE FOR THESE FURS."
|
147
|
+
1311 GOSUB 1320
|
148
|
+
1312 GOTO 1410
|
149
|
+
1320 PRINT "SUPPLIES AT NEW YORK COST $80.00."
|
150
|
+
1321 PRINT "YOUR TRAVEL EXPENSES TO NEW YORK WERE $25.00."
|
151
|
+
1322 RETURN
|
152
|
+
1400 PRINT "DO YOU WANT TO TRADE AT ANOTHER FORT?"
|
153
|
+
1402 PRINT "ANSWER YES OR NO",
|
154
|
+
1403 INPUT B$
|
155
|
+
1404 RETURN
|
156
|
+
1410 PRINT
|
157
|
+
1412 PRINT "YOUR BEAVER SOLD FOR $";B1*F(2);
|
158
|
+
1414 PRINT "YOUR FOX SOLD FOR $";D1*F(4)
|
159
|
+
1416 PRINT "YOUR ERMINE SOLD FOR $";E1*F(3);
|
160
|
+
1417 PRINT "YOUR MINK SOLD FOR $";M1*F(1)
|
161
|
+
1418 LET I=M1*F(1)+B1*F(2)+E1*F(3)+D1*F(4)+I
|
162
|
+
1420 PRINT
|
163
|
+
1422 PRINT "YOU NOW HAVE $";I;" INCLUDING YOUR PREVIOUS SAVINGS"
|
164
|
+
1425 GOTO 508
|
165
|
+
1430 FOR J=1 TO 4
|
166
|
+
1432 LET F(J)=0
|
167
|
+
1434 NEXT J
|
168
|
+
1436 RETURN
|
169
|
+
2000 DATA "MINK","BEAVER","ERMINE","FOX"
|
170
|
+
2046 END
|