tschak909 #1 Posted December 5, 2020 #Atari8bit Now that the handler and networking code works well enough for use in making games, we need to try and convert an existing turn based game to play over the #FujiNet. Here, is a potential competitive turn based game based on drilling oil wells. Quote Share this post Link to post Share on other sites
tsom #2 Posted December 5, 2020 Looks like it would be a fun project... though I may need to get a second FujiNet for one of my other Atari’s for testing We are in the middle of a good snow storm here in New England, so a perfect time for 8 but hacking. One sort of off topic question, did you speed up the disk accesses (mounting the tnfs servers and showing files, copying the disk, loading the basic program)? It seemed much faster than when I use mine. The WiFi access point is about 5’ from the FujiNet so I’m assuming signal isn’t the issue. Just curious. Quote Share this post Link to post Share on other sites
tschak909 #3 Posted December 5, 2020 @tsom if you can't get one, then you can simulate the "other side" with python, just use $9B for a line ending. If you have a U1MB or a HSIO patched OS rom, FujiNet can use it to speed up SIO accesses for all of its virtual devices. I am preparing a notes sheet for variables and program structure, will post shortly. -Thom Quote Share this post Link to post Share on other sites
tschak909 #4 Posted December 5, 2020 Oil Wells Variables: RX = X Center of oil hot spot RY = Y center of oil hot spot (3,14) arrays are four players of 15 weeks of data, so: X(3,14) - The X position of well for player and week Y(3,14) - The Y position of well for player and week D(3,14) - The color of well at this position (0-3) T(3,14) - Taxes for well for player and week BL(3,14) - Income for well for player and week COST(3,14) - Cost of each well for player and week PL(3,14) - Profit and loss values C(3) - Total profit for each player. These are only used during the final map drawing, to fully render out the diffusion map. SX(30) - Plot X SY(30) - Plot Y SC(30) - Plot Color LOCO(20) - Used for cursor location during portfolio well selling. A$ - Player 1 name (7 chars) B$ - Player 2 name C$ - Player 3 name D$ - Player 4 name Program routines: 100 - Program start. Define variables, open keyboard. 700 - Clear screen, Get players, go 1000 - Game main loop. 2000 - Map of game played after game ends 3000 - calculate oil probability at X,Y relative to hot spot RX,RY 4000 - The oil derrick display. 5030 - Drilling 6000 - we hit oil 9000-9050: Clear oil field, generate new hot spot values in RX,RY 10000 - scoreboard display, uses PEEK(741,742) to modify display list. 11000 - Portfolio display 20000 - Well Depreciation modeling Quote Share this post Link to post Share on other sites
tsom #5 Posted December 5, 2020 (edited) 27 minutes ago, tschak909 said: @tsom if you can't get one, then you can simulate the "other side" with python, just use $9B for a line ending. If you have a U1MB or a HSIO patched OS rom, FujiNet can use it to speed up SIO accesses for all of its virtual devices. I am preparing a notes sheet for variables and program structure, will post shortly. -Thom Ah ok, cool. That could work. And that makes sense about the speed issues. I'm using on stock 800xl/130xe. (and it's not that I "can't" get one, I just haven't ordered another (Do I really need one for each system (4 in total), no probably not, but "need" really doesn't enter in to it) Thanks. ps. Following the directions to get a copy of the .atr brought up a feature that would be cool - the ability to "move" a disk image from one drive slot to another. Now I have to eject both disks, then go back and find the one I mounted in D2 and re-mount it in D1. Would be nice to be able to just say "move the disk in D2 to D1". Just a nice to have. Edited December 5, 2020 by tsom 1 Quote Share this post Link to post Share on other sites
mchorvat #6 Posted December 6, 2020 (edited) 22 hours ago, tsom said: ps. Following the directions to get a copy of the .atr brought up a feature that would be cool - the ability to "move" a disk image from one drive slot to another. Now I have to eject both disks, then go back and find the one I mounted in D2 and re-mount it in D1. Would be nice to be able to just say "move the disk in D2 to D1". Just a nice to have. i second this. swap images/disks would be very handy indeed. When swapping mounted slot with not mounted slot you simply move the mounted disk to desired location. This is probably not the right thread for FN improvement ideas, but i'll add two more anyway 1) can we please get basic on/off switch with a push of a key in FN menu? - It's few lines of code. Since Basic is enabled by default on stock XL, and most of the programs do not require it, one need to hold Option key pressed for quite a long time if there are few atr images mounted. Sometimes it takes 30-60 seconds in my case. http://www.wudsn.com/index.php/productions-atari800/tutorials/tips 2) would it be possible to increase number of hosts? With the growing number of publicly available hosts, the list gets full quite fast and one needs to remove some hosts in order to try new ones out. to all Fujinet developers: you are doing amazing work. keep it up! Marco Edited December 6, 2020 by mchorvat Quote Share this post Link to post Share on other sites
tschak909 #7 Posted December 7, 2020 7 hours ago, mchorvat said: i second this. swap images/disks would be very handy indeed. When swapping mounted slot with not mounted slot you simply move the mounted disk to desired location. This is probably not the right thread for FN improvement ideas, but i'll add two more anyway 1) can we please get basic on/off switch with a push of a key in FN menu? - It's few lines of code. Since Basic is enabled by default on stock XL, and most of the programs do not require it, one need to hold Option key pressed for quite a long time if there are few atr images mounted. Sometimes it takes 30-60 seconds in my case. http://www.wudsn.com/index.php/productions-atari800/tutorials/tips 2) would it be possible to increase number of hosts? With the growing number of publicly available hosts, the list gets full quite fast and one needs to remove some hosts in order to try new ones out. to all Fujinet developers: you are doing amazing work. keep it up! Marco Since we're hijacking a topic, Can some people check out the config repository and start adding features? https://github.com/FujiNetWIFI/fujinet-config -THom Quote Share this post Link to post Share on other sites
tsom #8 Posted December 7, 2020 (edited) Am I mis-remembering, didn’t you put out a video on how to build and test the Config app? Would like to give it a try... Edited December 7, 2020 by tsom Quote Share this post Link to post Share on other sites
tschak909 #9 Posted December 7, 2020 17 minutes ago, tsom said: Am I mis-remembering, didn’t you put out a video on how to build and test the Config app? Would like to give it a try... there's not much to it, you just need: * GNU Make * A copy of CC65 (http://github.com/cc65/cc65) * some sort of POSIX environment, e.g. Linux, Mac OS X, or Windows Services for Linux. To build * clone it * make && make dist You'll get an autorun.atr that you can load and test. If you want to flash it onto your device, you'll need to follow the board bring-up instructions in the Wiki: https://github.com/FujiNetWIFI/fujinet-platformio/wiki/Board-bring-up-for-FujiNet-Platform.IO-code copy autorun.atr to the data/ folder, overwriting the autorun.atr, and use the build and upload filesystem task in platform.io to upload it to your fujinet. -Thom 1 Quote Share this post Link to post Share on other sites
tsom #10 Posted December 7, 2020 (edited) 9 hours ago, tschak909 said: there's not much to it, you just need: * GNU Make * A copy of CC65 (http://github.com/cc65/cc65) * some sort of POSIX environment, e.g. Linux, Mac OS X, or Windows Services for Linux. To build * clone it * make && make dist You'll get an autorun.atr that you can load and test. If you want to flash it onto your device, you'll need to follow the board bring-up instructions in the Wiki: https://github.com/FujiNetWIFI/fujinet-platformio/wiki/Board-bring-up-for-FujiNet-Platform.IO-code copy autorun.atr to the data/ folder, overwriting the autorun.atr, and use the build and upload filesystem task in platform.io to upload it to your fujinet. -Thom Trying to get this set up. Some notes. I'm using cc65 installed via Homebrew. The make functions are dependent on having https://github.com/FujiNetWIFI/fujinet-config-tools downloaded. Also needs a command line dir2atr program installed. However I'm having issues getting the configuration (c_cpp_properties.json) configured to use MacOS and Homebrew. The build commands and paths assume Windows install of cc65. Still working on it, will report in when/if I get it working. For what it's worth, here's the edits to the config files to get it to build using Homebrew installed cc65: c_cpp_properties.json: { "env": { "cc65_home": "/usr/local/Cellar/cc65/2.19" }, "configurations": [ { "name": "Atari 8-bit", "includePath": [ "${cc65_home}/share/cc65/**", "${workspaceFolder}/**" ], "defines": [ ], "compilerPath": "${cc65_home}/bin/cc65", "cStandard":"c89", "cppStandard":"gnu++98", "intelliSenseMode":"gcc-x86" } ], "version": 4 } tasks.json: { // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ { "label": "GNU Make CC65", "type": "shell", "command": "/usr/bin/make", "args": [ "all" ], "options": { "cwd": "${workspaceFolder}", "env": { "CC65_HOME": "/usr/local/Cellar/cc65/2.19" } }, "group": { "kind": "build", "isDefault": true }, "problemMatcher": [] } ] } Edited December 7, 2020 by tsom 1 Quote Share this post Link to post Share on other sites