diff --git a/01_Acey_Ducey/README.md b/01_Acey_Ducey/README.md index f8e16312..26856f71 100644 --- a/01_Acey_Ducey/README.md +++ b/01_Acey_Ducey/README.md @@ -15,6 +15,11 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) + #### External Links - Common Lisp: https://github.com/koalahedron/lisp-computer-games/blob/master/01%20Acey%20Ducey/common-lisp/acey-deucy.lisp - PowerShell: https://github.com/eweilnau/basic-computer-games-powershell/blob/main/AceyDucey.ps1 diff --git a/02_Amazing/README.md b/02_Amazing/README.md index e94949bd..b53cbbf5 100644 --- a/02_Amazing/README.md +++ b/02_Amazing/README.md @@ -13,6 +13,6 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html ---- +#### Porting Notes **2022-01-04:** patched original source in [#400](https://github.com/coding-horror/basic-computer-games/pull/400) to fix a minor bug where a generated maze may be missing an exit, particularly at small maze sizes. diff --git a/03_Animal/README.md b/03_Animal/README.md index defaa735..a8ab0e45 100644 --- a/03_Animal/README.md +++ b/03_Animal/README.md @@ -20,3 +20,7 @@ As published in Basic Computer Games (1978) Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/04_Awari/README.md b/04_Awari/README.md index a4b4d2da..173e86b3 100644 --- a/04_Awari/README.md +++ b/04_Awari/README.md @@ -36,3 +36,8 @@ As published in Basic Computer Games (1978) Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) + diff --git a/05_Bagels/README.md b/05_Bagels/README.md index 51d324bb..0a13acce 100644 --- a/05_Bagels/README.md +++ b/05_Bagels/README.md @@ -18,3 +18,7 @@ As published in Basic Computer Games (1978) Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/06_Banner/README.md b/06_Banner/README.md index 960b76cb..3acbf7fc 100644 --- a/06_Banner/README.md +++ b/06_Banner/README.md @@ -12,3 +12,8 @@ As published in Basic Computer Games (1978) Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) + diff --git a/07_Basketball/README.md b/07_Basketball/README.md index 158cba43..5200748d 100644 --- a/07_Basketball/README.md +++ b/07_Basketball/README.md @@ -28,3 +28,8 @@ As published in Basic Computer Games (1978) Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) + diff --git a/08_Batnum/README.md b/08_Batnum/README.md index e5b4db83..84052986 100644 --- a/08_Batnum/README.md +++ b/08_Batnum/README.md @@ -18,3 +18,8 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) + diff --git a/09_Battle/README.md b/09_Battle/README.md index 815cacd2..04286452 100644 --- a/09_Battle/README.md +++ b/09_Battle/README.md @@ -25,3 +25,7 @@ As published in Basic Computer Games (1978) Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/10_Blackjack/README.md b/10_Blackjack/README.md index 43cf263c..dcbe53bb 100644 --- a/10_Blackjack/README.md +++ b/10_Blackjack/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/11_Bombardment/README.md b/11_Bombardment/README.md index 4ab31b05..d0d05bf9 100644 --- a/11_Bombardment/README.md +++ b/11_Bombardment/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/12_Bombs_Away/README.md b/12_Bombs_Away/README.md index b1b60277..8a2decaa 100644 --- a/12_Bombs_Away/README.md +++ b/12_Bombs_Away/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/13_Bounce/README.md b/13_Bounce/README.md index 396b534d..770bc122 100644 --- a/13_Bounce/README.md +++ b/13_Bounce/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/14_Bowling/README.md b/14_Bowling/README.md index 99a7fade..d5492077 100644 --- a/14_Bowling/README.md +++ b/14_Bowling/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/15_Boxing/README.md b/15_Boxing/README.md index e3440676..12ecab4f 100644 --- a/15_Boxing/README.md +++ b/15_Boxing/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/16_Bug/README.md b/16_Bug/README.md index 136123ce..ea320459 100644 --- a/16_Bug/README.md +++ b/16_Bug/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/17_Bullfight/README.md b/17_Bullfight/README.md index d31bc4e2..cf331235 100644 --- a/17_Bullfight/README.md +++ b/17_Bullfight/README.md @@ -23,3 +23,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/18_Bullseye/README.md b/18_Bullseye/README.md index 0c42872e..a4b951e8 100644 --- a/18_Bullseye/README.md +++ b/18_Bullseye/README.md @@ -34,3 +34,8 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) + diff --git a/19_Bunny/README.md b/19_Bunny/README.md index 8d980287..c702867e 100644 --- a/19_Bunny/README.md +++ b/19_Bunny/README.md @@ -6,3 +6,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/20_Buzzword/README.md b/20_Buzzword/README.md index 22e76f6f..97dc41c1 100644 --- a/20_Buzzword/README.md +++ b/20_Buzzword/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/21_Calendar/README.md b/21_Calendar/README.md index 5a93d50d..05c3ab96 100644 --- a/21_Calendar/README.md +++ b/21_Calendar/README.md @@ -21,3 +21,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/22_Change/README.md b/22_Change/README.md index 840714a4..982c65c9 100644 --- a/22_Change/README.md +++ b/22_Change/README.md @@ -10,3 +10,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/23_Checkers/README.md b/23_Checkers/README.md index 9c851cb6..1d9143ca 100644 --- a/23_Checkers/README.md +++ b/23_Checkers/README.md @@ -19,7 +19,8 @@ The file `checkers.annotated.bas` contains an indented and annotated version of the source code. This is no longer valid BASIC code but should be more readable. -## Known Issues In the Original BASIC Code +#### Porting Notes + - If the computer moves a checker to the bottom row, it promotes, but leaves the original checker in place. (See line 1240) - Human players may move non-kings as if they were kings. (See lines 1590 to 1810) diff --git a/24_Chemist/README.md b/24_Chemist/README.md index b93c1431..b36f0b04 100644 --- a/24_Chemist/README.md +++ b/24_Chemist/README.md @@ -13,5 +13,9 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html +#### Porting Notes + +(please note any difficulties or challenges in porting here) + #### External Links - C: https://github.com/ericfischer/basic-computer-games/blob/main/24%20Chemist/c/chemist.c diff --git a/25_Chief/README.md b/25_Chief/README.md index 5cb044c0..225430cb 100644 --- a/25_Chief/README.md +++ b/25_Chief/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/26_Chomp/README.md b/26_Chomp/README.md index e9a8b5ce..3935a483 100644 --- a/26_Chomp/README.md +++ b/26_Chomp/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/27_Civil_War/README.md b/27_Civil_War/README.md index 17d6816f..714b2ebe 100644 --- a/27_Civil_War/README.md +++ b/27_Civil_War/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/28_Combat/README.md b/28_Combat/README.md index 32b2af65..10918fc4 100644 --- a/28_Combat/README.md +++ b/28_Combat/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/29_Craps/README.md b/29_Craps/README.md index 7a08b156..ace6d7b8 100644 --- a/29_Craps/README.md +++ b/29_Craps/README.md @@ -18,9 +18,10 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html -### Comments on the BASIC code for re-implementers. +#### Porting Notes 15 LET R=0 + `R` is a variable that tracks winnings and losings. Unlike other games that start out with a lump sum of cash to spend this game assumes the user has as much money as they want and we only track how much they lost or won. @@ -31,6 +32,7 @@ much money as they want and we only track how much they lost or won. 24 LET X=(RND(0)) 25 LET T =T+1 26 IF T<=Z THEN 24 + This block of code does nothing other than try to scramble the random number generator. Random number generation is not random, they are generated from the previous generated number. Because of the slow speed of these systems back then, @@ -89,7 +91,6 @@ the user input. 60 IF X=1 THEN 40 65 IF X=0 THEN 40 - `F` is a variable that represents the users wager for this betting round. `E` and `S` represent the two individual and random dice being rolled. This code is actually wrong because it returns a value between 0 and 6. diff --git a/30_Cube/README.md b/30_Cube/README.md index 41973db1..f99366a2 100644 --- a/30_Cube/README.md +++ b/30_Cube/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/31_Depth_Charge/README.md b/31_Depth_Charge/README.md index 1a0ed7a4..36b29acd 100644 --- a/31_Depth_Charge/README.md +++ b/31_Depth_Charge/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/32_Diamond/README.md b/32_Diamond/README.md index 1f155ba3..f8b9a5dc 100644 --- a/32_Diamond/README.md +++ b/32_Diamond/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/33_Dice/README.md b/33_Dice/README.md index 71406a01..5de5f189 100644 --- a/33_Dice/README.md +++ b/33_Dice/README.md @@ -19,3 +19,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/34_Digits/README.md b/34_Digits/README.md index b1c96819..569122c8 100644 --- a/34_Digits/README.md +++ b/34_Digits/README.md @@ -15,3 +15,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/35_Even_Wins/README.md b/35_Even_Wins/README.md index 9db7654b..4f4a18a1 100644 --- a/35_Even_Wins/README.md +++ b/35_Even_Wins/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/36_Flip_Flop/README.md b/36_Flip_Flop/README.md index 5f32111d..d51a4436 100644 --- a/36_Flip_Flop/README.md +++ b/36_Flip_Flop/README.md @@ -26,3 +26,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/37_Football/README.md b/37_Football/README.md index 7f791861..2f6b68a6 100644 --- a/37_Football/README.md +++ b/37_Football/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/38_Fur_Trader/README.md b/38_Fur_Trader/README.md index 676b605b..8406487e 100644 --- a/38_Fur_Trader/README.md +++ b/38_Fur_Trader/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/39_Golf/README.md b/39_Golf/README.md index 28da3594..262e7c38 100644 --- a/39_Golf/README.md +++ b/39_Golf/README.md @@ -13,3 +13,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/40_Gomoko/README.md b/40_Gomoko/README.md index 9b6ad6b6..9276ede2 100644 --- a/40_Gomoko/README.md +++ b/40_Gomoko/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/41_Guess/README.md b/41_Guess/README.md index cb041db7..e43da0da 100644 --- a/41_Guess/README.md +++ b/41_Guess/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/42_Gunner/README.md b/42_Gunner/README.md index 0621ec54..6f4f6a9a 100644 --- a/42_Gunner/README.md +++ b/42_Gunner/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/43_Hammurabi/README.md b/43_Hammurabi/README.md index c02219b1..2e3d6397 100644 --- a/43_Hammurabi/README.md +++ b/43_Hammurabi/README.md @@ -21,6 +21,11 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html +#### Porting Notes + +(please note any difficulties or challenges in porting here) + + #### External Links - C: https://github.com/beyonddream/hamurabi - Rust: https://github.com/beyonddream/hamurabi.rs diff --git a/44_Hangman/README.md b/44_Hangman/README.md index ee533251..a8af66e0 100644 --- a/44_Hangman/README.md +++ b/44_Hangman/README.md @@ -24,3 +24,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/45_Hello/README.md b/45_Hello/README.md index 117db0ce..87c47f65 100644 --- a/45_Hello/README.md +++ b/45_Hello/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/46_Hexapawn/README.md b/46_Hexapawn/README.md index 0197fa14..bbcf0ad6 100644 --- a/46_Hexapawn/README.md +++ b/46_Hexapawn/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/47_Hi-Lo/README.md b/47_Hi-Lo/README.md index 7fb37221..f9b09c14 100644 --- a/47_Hi-Lo/README.md +++ b/47_Hi-Lo/README.md @@ -19,3 +19,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/48_High_IQ/README.md b/48_High_IQ/README.md index 7dee9c95..2922f920 100644 --- a/48_High_IQ/README.md +++ b/48_High_IQ/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/49_Hockey/README.md b/49_Hockey/README.md index 41e6950e..3decfe1b 100644 --- a/49_Hockey/README.md +++ b/49_Hockey/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/50_Horserace/README.md b/50_Horserace/README.md index 00e24df5..25bec0dd 100644 --- a/50_Horserace/README.md +++ b/50_Horserace/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/51_Hurkle/README.md b/51_Hurkle/README.md index 0204e405..be94172a 100644 --- a/51_Hurkle/README.md +++ b/51_Hurkle/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/52_Kinema/README.md b/52_Kinema/README.md index 31a69199..26821b0e 100644 --- a/52_Kinema/README.md +++ b/52_Kinema/README.md @@ -17,3 +17,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/53_King/README.md b/53_King/README.md index c8cc45d5..411d4876 100644 --- a/53_King/README.md +++ b/53_King/README.md @@ -10,7 +10,16 @@ The author of this program is James A. Storer who wrote it while a student at Le ⚠️ This game includes references to suicide or self-harm. -### Bugs +--- + +As published in Basic Computer Games (1978): +- [Atari Archives](https://www.atariarchives.org/basicgames/showpage.php?page=96) +- [Annarchive](https://annarchive.com/files/Basic_Computer_Games_Microcomputer_Edition.pdf#page=111) + +Downloaded from Vintage Basic at +http://www.vintage-basic.net/games.html + +#### Porting Notes Implementers should be aware that this game contains at least one bug. @@ -32,11 +41,4 @@ A quick fix for this bug in the original code would be 1410 PRINT " YOU MADE";ABS(INT(V1-V2));"RALLODS FROM TOURIST TRADE." ---- -As published in Basic Computer Games (1978): -- [Atari Archives](https://www.atariarchives.org/basicgames/showpage.php?page=96) -- [Annarchive](https://annarchive.com/files/Basic_Computer_Games_Microcomputer_Edition.pdf#page=111) - -Downloaded from Vintage Basic at -http://www.vintage-basic.net/games.html diff --git a/54_Letter/README.md b/54_Letter/README.md index fab67494..0d401644 100644 --- a/54_Letter/README.md +++ b/54_Letter/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/55_Life/README.md b/55_Life/README.md index 149bf25d..1834c1e6 100644 --- a/55_Life/README.md +++ b/55_Life/README.md @@ -33,3 +33,8 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/56_Life_for_Two/README.md b/56_Life_for_Two/README.md index d880653d..3cc22c9e 100644 --- a/56_Life_for_Two/README.md +++ b/56_Life_for_Two/README.md @@ -42,3 +42,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/57_Literature_Quiz/README.md b/57_Literature_Quiz/README.md index 2e55251f..a0ac6f80 100644 --- a/57_Literature_Quiz/README.md +++ b/57_Literature_Quiz/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/58_Love/README.md b/58_Love/README.md index 1b2431aa..26dc2868 100644 --- a/58_Love/README.md +++ b/58_Love/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/59_Lunar_LEM_Rocket/README.md b/59_Lunar_LEM_Rocket/README.md index 9d1890ac..91fe1cd6 100644 --- a/59_Lunar_LEM_Rocket/README.md +++ b/59_Lunar_LEM_Rocket/README.md @@ -22,3 +22,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/60_Mastermind/README.md b/60_Mastermind/README.md index 5472f57d..9aba2691 100644 --- a/60_Mastermind/README.md +++ b/60_Mastermind/README.md @@ -19,19 +19,6 @@ Note that in this particular implementation, we never actually create a list of At the beginning of this game, you input the number of colors and number of positions you wish to use (which will directly affect the number of combinations) and the number of rounds you wish to play. While you are playing as the code-breaker, you may type BOARD at any time to get a list of your previous guesses and clues, and QUIT to end the game. Note that this version uses string arrays, but this is merely for convenience and can easily be converted for a BASIC that has no string arrays as long as it has a MID$ function. This is because the string arrays are one-dimensional, never exceed a length greater than the number of positions and the elements never contain more than one character. ---- -### Implementation notes -in [#613](https://github.com/coding-horror/basic-computer-games/pull/613) -`1060 IF B1<>B OR W1<>W THEN I(X)=0` -was changed to: -`1060 IF B1>B OR W1>W THEN I(X)=0` -This was done because of a bug: -Originally, after guessing and getting feedback, the computer would look through every possible combination, and for all that haven't previously been marked as impossible it would check whether or not the black and white pins that that combination should get are not-equal to what its previous guess got and, if they are equal, the combination would be marked as possible, and if they aren't equal then the combination would be marked as impossible. This results in a bug where the computer eliminates the correct answer as a possible solution after the first guess, unless the first guess just happens to be correct. - -this was discussed in more detail in [issue #611](https://github.com/coding-horror/basic-computer-games/issues/611) - -additionally, it's recommended that you have the computer elimate it's previous guess as possible unless that guess was correct. (the rust port does this) - --- As published in Basic Computer Games (1978): @@ -40,3 +27,21 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +in [#613](https://github.com/coding-horror/basic-computer-games/pull/613) + +`1060 IF B1<>B OR W1<>W THEN I(X)=0` + +was changed to: + +`1060 IF B1>B OR W1>W THEN I(X)=0` + +This was done because of a bug: + +Originally, after guessing and getting feedback, the computer would look through every possible combination, and for all that haven't previously been marked as impossible it would check whether or not the black and white pins that that combination should get are not-equal to what its previous guess got and, if they are equal, the combination would be marked as possible, and if they aren't equal then the combination would be marked as impossible. This results in a bug where the computer eliminates the correct answer as a possible solution after the first guess, unless the first guess just happens to be correct. + +this was discussed in more detail in [issue #611](https://github.com/coding-horror/basic-computer-games/issues/611) + +additionally, it's recommended that you have the computer elimate it's previous guess as possible unless that guess was correct. (the rust port does this) diff --git a/61_Math_Dice/README.md b/61_Math_Dice/README.md index a24c9dbe..7955b94e 100644 --- a/61_Math_Dice/README.md +++ b/61_Math_Dice/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/62_Mugwump/README.md b/62_Mugwump/README.md index c67037f2..9fb09d61 100644 --- a/62_Mugwump/README.md +++ b/62_Mugwump/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/63_Name/README.md b/63_Name/README.md index 45bf4e9a..f8b610e9 100644 --- a/63_Name/README.md +++ b/63_Name/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/64_Nicomachus/README.md b/64_Nicomachus/README.md index bbe911fc..bec9c782 100644 --- a/64_Nicomachus/README.md +++ b/64_Nicomachus/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/65_Nim/README.md b/65_Nim/README.md index 6d3a80fe..11243f0f 100644 --- a/65_Nim/README.md +++ b/65_Nim/README.md @@ -16,16 +16,15 @@ The winning strategy can be mathematically defined, however, rather than present This game of NIM is from Dartmouth College and allows you to specify any starting size for the four piles and also a win option. To play traditional NIM, you would simply specify 7,5,3 and 1, and win option 1. -### Porting Notes - -This can be a real challenge to port because of all the `GOTO`s going out of loops down to code. You may need breaks and continues, or other techniques. - --- As published in Basic Computer Games (1978): - [Atari Archives](https://www.atariarchives.org/basicgames/showpage.php?page=118) - [Annarchive](https://annarchive.com/files/Basic_Computer_Games_Microcomputer_Edition.pdf#page=133) - Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +This can be a real challenge to port because of all the `GOTO`s going out of loops down to code. You may need breaks and continues, or other techniques. diff --git a/66_Number/README.md b/66_Number/README.md index 47a9b5cb..43d97db3 100644 --- a/66_Number/README.md +++ b/66_Number/README.md @@ -12,3 +12,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/67_One_Check/README.md b/67_One_Check/README.md index b3522e15..63161d82 100644 --- a/67_One_Check/README.md +++ b/67_One_Check/README.md @@ -27,3 +27,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/68_Orbit/README.md b/68_Orbit/README.md index df49852b..01fb758c 100644 --- a/68_Orbit/README.md +++ b/68_Orbit/README.md @@ -55,3 +55,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/69_Pizza/README.md b/69_Pizza/README.md index 671e7237..56548b64 100644 --- a/69_Pizza/README.md +++ b/69_Pizza/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/70_Poetry/README.md b/70_Poetry/README.md index b04bb915..7684ebec 100644 --- a/70_Poetry/README.md +++ b/70_Poetry/README.md @@ -27,3 +27,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/70_Poetry/poetry.pl b/70_Poetry/python/poetry.pl old mode 100755 new mode 100644 similarity index 100% rename from 70_Poetry/poetry.pl rename to 70_Poetry/python/poetry.pl diff --git a/71_Poker/README.md b/71_Poker/README.md index 1bad96d6..a8082059 100644 --- a/71_Poker/README.md +++ b/71_Poker/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/72_Queen/README.md b/72_Queen/README.md index dc62cb59..6c4ef5b1 100644 --- a/72_Queen/README.md +++ b/72_Queen/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/73_Reverse/README.md b/73_Reverse/README.md index a753e8a8..1070c117 100644 --- a/73_Reverse/README.md +++ b/73_Reverse/README.md @@ -29,3 +29,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/74_Rock_Scissors_Paper/README.md b/74_Rock_Scissors_Paper/README.md index 1b9fa865..fdaa0f30 100644 --- a/74_Rock_Scissors_Paper/README.md +++ b/74_Rock_Scissors_Paper/README.md @@ -19,3 +19,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/75_Roulette/README.md b/75_Roulette/README.md index 51719248..4902aa9b 100644 --- a/75_Roulette/README.md +++ b/75_Roulette/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/76_Russian_Roulette/README.md b/76_Russian_Roulette/README.md index 5ec8148e..a581f717 100644 --- a/76_Russian_Roulette/README.md +++ b/76_Russian_Roulette/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/77_Salvo/README.md b/77_Salvo/README.md index fbf938ca..d5e029a9 100644 --- a/77_Salvo/README.md +++ b/77_Salvo/README.md @@ -23,3 +23,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/78_Sine_Wave/README.md b/78_Sine_Wave/README.md index c38234a2..32789d04 100644 --- a/78_Sine_Wave/README.md +++ b/78_Sine_Wave/README.md @@ -10,3 +10,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/79_Slalom/README.md b/79_Slalom/README.md index 9a9d2605..8c45820c 100644 --- a/79_Slalom/README.md +++ b/79_Slalom/README.md @@ -15,9 +15,8 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html -### Bugs +#### Porting Notes -- In the original version, the data pointer doesn't reset after a race is completed. This causes subsequent races to -error at some future point at line 540, +In the original version, the data pointer doesn't reset after a race is completed. This causes subsequent races to error at some future point at line 540, - 540 READ Q + 540 READ Q diff --git a/80_Slots/README.md b/80_Slots/README.md index 952fa03e..dcc3aabe 100644 --- a/80_Slots/README.md +++ b/80_Slots/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/81_Splat/README.md b/81_Splat/README.md index 24631217..9708ac2b 100644 --- a/81_Splat/README.md +++ b/81_Splat/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/82_Stars/README.md b/82_Stars/README.md index ff067975..f4e430d1 100644 --- a/82_Stars/README.md +++ b/82_Stars/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/83_Stock_Market/README.md b/83_Stock_Market/README.md index 65447e1f..6136b94b 100644 --- a/83_Stock_Market/README.md +++ b/83_Stock_Market/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/84_Super_Star_Trek/README.md b/84_Super_Star_Trek/README.md index 1ad375fd..1edeb869 100644 --- a/84_Super_Star_Trek/README.md +++ b/84_Super_Star_Trek/README.md @@ -88,17 +88,6 @@ The relation between the Historical and Standard nomenclatures is shown in the s 15. This version of Star Trek was created for a Data General Nova 800 system with 32K or core. So that it would fit, the instructions are separated from the main program via a CHAIN. For conversion to DEC BASIC-PLUS, Statement 160 (Randomize) should be moved after the return from the chained instructions, say to Statement 245. For Altair BASIC, Randomize and the chain instructions should be eliminated. ---- -#### Bugs - -Many of the programs in this book and this collection have bugs in the original code. - -@jkboyce has done a great job of discovering and fixing a number of bugs in the [original code](superstartrek.bas), as part of his [python implementation](python/superstartrek.py), which should be noted by other implementers: - -- line `4410` : `D(7)` should be `D(6)` -- lines `8310`,`8330`,`8430`,`8450` : Division by zero is possible -- line `440` : `B9` should be initialised to 0, not 2 - --- As published in Basic Computer Games (1978): @@ -111,5 +100,16 @@ http://www.vintage-basic.net/games.html Instructions in this directory at instructions.txt +#### Porting Notes + +Many of the programs in this book and this collection have bugs in the original code. + +@jkboyce has done a great job of discovering and fixing a number of bugs in the [original code](superstartrek.bas), as part of his [python implementation](python/superstartrek.py), which should be noted by other implementers: + +- line `4410` : `D(7)` should be `D(6)` +- lines `8310`,`8330`,`8430`,`8450` : Division by zero is possible +- line `440` : `B9` should be initialised to 0, not 2 + + #### External Links - C++: https://www.codeproject.com/Articles/28399/The-Object-Oriented-Text-Star-Trek-Game-in-C diff --git a/85_Synonym/README.md b/85_Synonym/README.md index 66c3c4c3..beb83329 100644 --- a/85_Synonym/README.md +++ b/85_Synonym/README.md @@ -19,8 +19,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html - -## Known Issues +#### Porting Notes - Each time the player asks for HELP, one of the synonyms is shown and discarded. There is no protection against the player using up diff --git a/86_Target/README.md b/86_Target/README.md index 29e14e64..04f8714f 100644 --- a/86_Target/README.md +++ b/86_Target/README.md @@ -14,3 +14,8 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/87_3-D_Plot/README.md b/87_3-D_Plot/README.md index 3361976a..60505c22 100644 --- a/87_3-D_Plot/README.md +++ b/87_3-D_Plot/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/88_3-D_Tic-Tac-Toe/README.md b/88_3-D_Tic-Tac-Toe/README.md index 3fa7c6c9..969de3d8 100644 --- a/88_3-D_Tic-Tac-Toe/README.md +++ b/88_3-D_Tic-Tac-Toe/README.md @@ -24,3 +24,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/89_Tic-Tac-Toe/README.md b/89_Tic-Tac-Toe/README.md index 311322fa..0205ab74 100644 --- a/89_Tic-Tac-Toe/README.md +++ b/89_Tic-Tac-Toe/README.md @@ -23,3 +23,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/90_Tower/README.md b/90_Tower/README.md index cbd05830..f98078c1 100644 --- a/90_Tower/README.md +++ b/90_Tower/README.md @@ -18,3 +18,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/91_Train/README.md b/91_Train/README.md index 50e7cf6e..1717a13a 100644 --- a/91_Train/README.md +++ b/91_Train/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/92_Trap/README.md b/92_Trap/README.md index 18d5db48..4966acff 100644 --- a/92_Trap/README.md +++ b/92_Trap/README.md @@ -17,3 +17,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/93_23_Matches/README.md b/93_23_Matches/README.md index 3e48212e..8ef8d6f8 100644 --- a/93_23_Matches/README.md +++ b/93_23_Matches/README.md @@ -16,3 +16,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/94_War/README.md b/94_War/README.md index a850f73e..448d84b6 100644 --- a/94_War/README.md +++ b/94_War/README.md @@ -12,3 +12,8 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/95_Weekday/README.md b/95_Weekday/README.md index 445c2c4b..d8c941f2 100644 --- a/95_Weekday/README.md +++ b/95_Weekday/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here) diff --git a/96_Word/README.md b/96_Word/README.md index 8db22c6c..5672fe03 100644 --- a/96_Word/README.md +++ b/96_Word/README.md @@ -14,3 +14,7 @@ As published in Basic Computer Games (1978): Downloaded from Vintage Basic at http://www.vintage-basic.net/games.html + +#### Porting Notes + +(please note any difficulties or challenges in porting here)