Elkino Posted April 6, 2021 Share Posted April 6, 2021 3 minutes ago, Philsan said: Wouldn't be better to map fire to CTRL and cursor movement to LEFT ALT + arrows (like state-of-the art emulator Altirra)? Moreover, notebooks don't have numpad. Its a little bit tricky to do in MAME, what I can I do is map the arrows to *,-,=,+ and move the cursor with CTRL+Arrows, but on Mac CTRL+Arrows change the current desktop. (All can be easier if atari800 emulator have an JavaScript/WebAssembly target using emscripten). https://github.com/eahumada/mame/blob/master/src/mame/drivers/atari400.cpp Also, I exploring to continue working with jsA8E, but also need some work in the future. https://eahumada.github.io/AtariOnline/fastbasic.html?disk_filename=fastbasic.atr I wonder: On the FB IDE, how is possible to exit from the Save file prompt when press CTRL+Q if one not wish to save the sources? I get stuck in that point when I use the IDE in the emulator, as the "virtual" disk is write protected. Quote Link to comment Share on other sites More sharing options...
+Philsan Posted April 6, 2021 Share Posted April 6, 2021 Ah, it's not easy then. When I press CTRL + N to start FastBasic programming, Chrome opens a new window. Quote Link to comment Share on other sites More sharing options...
Elkino Posted April 6, 2021 Share Posted April 6, 2021 Yes, as mentioned, is a work in progress, at least you can run the samples, use TYPE command to list the sources. Hope that in the future with a better JavaScript emulator you can do a lot more online, this is just the beginning. https://eahumada.github.io/AtariOnline/ 2 Quote Link to comment Share on other sites More sharing options...
+mytek Posted May 12, 2022 Share Posted May 12, 2022 This is kind of a bump of an earlier inquiry I made at least a year ago, but probably on a different FASTbasic post (couldn't find it). Anyway I have been having fun with my 4-in-1 language selection on a customized 1200XL using the function keys F1-F4, and currently have these assignments... F1: Basic RevC F2: Altirra Basic F3: Assembler/Editor F4: SpeedScript I think it would be even more useful to substitute FASTbasic (Integer Version) for the Basic RevC, but I only see a XEX possibility presently using the MAKE command. Is an 8K binary version also a possibility? This idea would also work in one of the 4 language slots of a U1MB, so it would see much wider use than my example application. Thanks 1 Quote Link to comment Share on other sites More sharing options...
dmsc Posted May 15, 2022 Author Share Posted May 15, 2022 Hi! On 5/12/2022 at 7:34 PM, mytek said: This is kind of a bump of an earlier inquiry I made at least a year ago, but probably on a different FASTbasic post (couldn't find it). I think it would be even more useful to substitute FASTbasic (Integer Version) for the Basic RevC, but I only see a XEX possibility presently using the MAKE command. Is an 8K binary version also a possibility? It is possible, but you would lose the possibility of compiling programs from the IDE. This is because the compiler copies the runtime to the compiled binary to build the complete executable. If the runtime was located in the cart memory, it would be at a different address than needed. A solution would be to copy the runtime from the cartridge to low memory at start, but then the interpreter would have less memory available than the binary loaded version (because the cartridge would always use 8k of memory). I think that the best option would be to copy the full IDE from cart to RAM and then disable the cartridge - then it would behave like a fast-loaded version, this would be possible if you assume a BASIC ROM compatible cart controlled by PORTB bit 1. A third idea: a version that has the runtime in RAM and the compiler and editor in the ROM - but that when running a program disables the cartridge first. This would make more RAM available for the program being run, but would need some adjustments to the code. I will see if I can come up with a version that does this. On 5/12/2022 at 7:34 PM, mytek said: This idea would also work in one of the 4 language slots of a U1MB, so it would see much wider use than my example application. Are those also enabled/disabled using PORTB? Have Fun! Quote Link to comment Share on other sites More sharing options...
+mytek Posted May 15, 2022 Share Posted May 15, 2022 3 hours ago, dmsc said: I think that the best option would be to copy the full IDE from cart to RAM and then disable the cartridge - then it would behave like a fast-loaded version, this would be possible if you assume a BASIC ROM compatible cart controlled by PORTB bit 1. Yes that's how my 4-in-1 Language EPROM presently works. It's composed of four 8K banks that are selected individually via the upper two address bits, with whichever bank is active being controlled as if it were built-in Basic on an XL/XE system. 4 hours ago, dmsc said: Are those also enabled/disabled using PORTB? Good question, maybe @flashjazzcat can answer that. 4 hours ago, dmsc said: A third idea: a version that has the runtime in RAM and the compiler and editor in the ROM - but that when running a program disables the cartridge first. This would make more RAM available for the program being run, but would need some adjustments to the code. I will see if I can come up with a version that does this. Thanks for looking into this. i think it could be real cool ? Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted May 15, 2022 Share Posted May 15, 2022 6 hours ago, dmsc said: Are those also enabled/disabled using PORTB? They work as internal BASIC ROMs. 1 Quote Link to comment Share on other sites More sharing options...
dmsc Posted May 19, 2022 Author Share Posted May 19, 2022 Hi! On 5/15/2022 at 2:16 AM, mytek said: Thanks for looking into this. i think it could be real cool ? Here there are two test versions: - fb-beta46-basicrom.bin : A compressed image of the full floating-point interpreter, stored in a ROM image that should replace the BASIC ROM in an XL computer. It decompresses to $2000, disables the BASIC ROM and starts. - fbi-beta46-cart.bin : A cartridge image if the integer interpreter. The runtime (interpreter) is compressed and copied from ROM to RAM at start, but the compiler and editor is ROM. This means that less memory is available for the user, but it is a standard cartridge and compatible with all Atari computers. The first version was easier to do, because the binary is not changed a lot, only the editor is changed to start with the already loaded help text. The second version was more difficult, as I have to compress the interpreter because the cartridge does not have enough space for the code to copy from ROM to RAM and the help file. I used a slightly modified ZX0 compressor to make the decompressor code smaller - slow but only 130 bytes, and the ROM has only one byte to spare! Also, the compiler used self-modifying-code, I had to modify it to make it ROM-able - chasing all the bugs produced by the changes. I think that the results works well enough, but IMHO more testing is probably needed. Have Fun! 4 2 Quote Link to comment Share on other sites More sharing options...
OxC0FFEE Posted May 19, 2022 Share Posted May 19, 2022 @dmsc When we had corresponded previously, I recall saying it would be neat if you had a tool like basicparser/tbxlparser that would abbreviate and obfuscate and make optimized FastBasic listings (mostly for the tenline basic compo). Did you say you had, or had in development, such a tool? I find it a real timesaver in my TBXL development routine, and it's the missing link for me to switch to FB. 1 Quote Link to comment Share on other sites More sharing options...
+mytek Posted May 22, 2022 Share Posted May 22, 2022 On 5/18/2022 at 10:03 PM, dmsc said: Here there are two test versions: - fb-beta46-basicrom.bin : A compressed image of the full floating-point interpreter, stored in a ROM image that should replace the BASIC ROM in an XL computer. It decompresses to $2000, disables the BASIC ROM and starts. - fbi-beta46-cart.bin : A cartridge image if the integer interpreter. The runtime (interpreter) is compressed and copied from ROM to RAM at start, but the compiler and editor is ROM. This means that less memory is available for the user, but it is a standard cartridge and compatible with all Atari computers. Thank you very much for doing this For 576NUC+ users I have made a new ROM called the Programmer-Pack which incorporates the FastBasic beta46 binary. I'll be uploading it in the 576NUC+ thread. 3 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.