ivop Posted October 20, 2012 Share Posted October 20, 2012 Perhaps we should start a thread for these? (i.e. games, utilities that do not work out of the box with a sic! cart) Here's and .xex file which contains DOS 2.5 + Atmas II which can be used to boot both at once from a SIC! Cart. This file can also be used to boot from several emulators (boot file/image) and other $700 based boot loaders. Aspeqt file loader works as well. DOS is loaded at $5700 and moved to $700 before initializing DOS and running the application, atmas 2 in this case. atmas.xex Quote Link to comment Share on other sites More sharing options...
Marius Posted October 21, 2012 Share Posted October 21, 2012 Great! Could you also creat a Mac/65 cart? Just like the OSS Mac/65 cart... (not a file version together with a DOS, but a real ROM)... or is this too difficult? Quote Link to comment Share on other sites More sharing options...
ivop Posted October 21, 2012 Author Share Posted October 21, 2012 Where can I find a 1.02 ROM image? I googled around but didn't have any luck. Quote Link to comment Share on other sites More sharing options...
ivop Posted October 23, 2012 Author Share Posted October 23, 2012 Although I still don't have a v1.02 MAC/65 dump at my disposal, I investigated how it (and Action, Basic XL,XE) can be converted to a SIC! cart. OSS carts use the address lines to do bank-switching, i.e. write something to $d500, $d501 or $d509 selects a different 4k bank at $a000-$afff ($b000-$bfff is a fixed bank) SIC on the other hand uses the databus to do bank-switching, i.e. write $00, $01, $02, etc... to $d500. It can disable $8000-$9fff (which is off by default) so the amount of free RAM will be the same. All of the above mentioned OSS carts use single store instructions to switch banks, which leaves all registers (A,X,Y) unchanged. Switching to a different SIC bank needs something like PHA, LDA #$02, STA $D500, PLA, which does not fit in the same space, so it should be put in a subroutine (jsr foo fits in place of sta foo). Sadly, there is no free ROM space in bank M to put three such routines, so that only leaves RAM. My idea is to use SIC bank0 to setup the switching routines at, let's say the bottom of the stack, then switch to bank 1 and run the cart which has all bank switching stores replaced by the corresponding jsr's. OSS carts: Physical order of banks: M, 0, 9, 1. A3 A0 A000-AFFF B000-BFFF RD5 Values 0 0 bank 0 bank m 1 0,2,4,6 $d500 0 1 bank 1 bank m 1 1,3,5,7 $d501 1 0 off off 0 8,A,C,E 1 1 bank 9 bank m 1 9,B,D,F $d509 SIC! Cart: Each bank is 16k $00 bank 0: 8k off 8k init code, copy bankswitching code to bottom of stack, switch to $01 and run $01 bank 1: 8k off 4k oss bank 0, 4k oss bank m $02 bank 2: 8k off 4k oss bank 1, 4k oss bank m $03 bank 3: 8k off 4k oss bank 9, 4k oss bank m shortest code I can come up with: (18 bytes) switch01: pha lda #$01 bpl switch switch02: pha lda #$02 bpl switch switch03: pha lda #$03 switch: sta $d500 pla rts If this works, you can also put a menu in bank $00 (plenty of space) and select one of four carts and fill 4-6, 7-9 and 10-12 with the other three M019 OSS carts and run one of those instead ATM I am busy with other stuff and I don't want to do too many things at once, but this should get you or anybody else started in porting these carts to a sic cart. Quote Link to comment Share on other sites More sharing options...
ivop Posted November 8, 2012 Author Share Posted November 8, 2012 Here's a conversion of Turbo Basic XL. turbosic.xex turbosic-source.zip 2 Quote Link to comment Share on other sites More sharing options...
ivop Posted November 8, 2012 Author Share Posted November 8, 2012 DOS 2.5 sicdos25.xex sicdos25.zip Quote Link to comment Share on other sites More sharing options...
Louis Posted November 8, 2012 Share Posted November 8, 2012 short question, maybe someone knows. Can TurboBasic be loaded into the Basic ROM of Ultimate1MB ? Or is that not advisable? Quote Link to comment Share on other sites More sharing options...
ivop Posted November 8, 2012 Author Share Posted November 8, 2012 (edited) No. Turbo Basic is an application that runs partly from main RAM and large parts of the RAM under the OS ROM. There's no way it'll fit in 8kB, not even with compression. Code generally does not compress very well. BTW The above does not turn a SIC cart into an instant Turbo Basic. It's just an exe file that can be loaded from a sicmenu, or any other $700-based loader for that matter. It's pretty fast though and IMHO it's cleaner than Nir Dary's (sp?) conversion. On-topic again: Any interest in a conversion of the Turbo Basic compiler, too? Edited November 8, 2012 by ivop Quote Link to comment Share on other sites More sharing options...
a8isa1 Posted November 9, 2012 Share Posted November 9, 2012 (edited) No. Turbo Basic is an application that runs partly from main RAM and large parts of the RAM under the OS ROM. There's no way it'll fit in 8kB, not even with compression. Code generally does not compress very well. BTW The above does not turn a SIC cart into an instant Turbo Basic. It's just an exe file that can be loaded from a sicmenu, or any other $700-based loader for that matter. It's pretty fast though and IMHO it's cleaner than Nir Dary's (sp?) conversion. On-topic again: Any interest in a conversion of the Turbo Basic compiler, too? slightly off-topic: this sounded so good I had to try it but I since don't own a SIC! cart I decided to install it on an Atarimax 8mbit flashcart. It worked but it wouldn't load a DOS (MyDOS 4.53/4, in my case) from a disk. After playing around with the installer options for that cart and making no progress I wondered what if I boot a MyDOS disk with Turbo BASIC XL on it and make my own RAM dumps for $0000-$00FF and $0200-$37FF and rebuild the XEX. This worked! Of course, if there is no DUP.SYS on the disk that I happen to be using then I can't go to the DOS menu. However, I can at least access files on a disk now. I was just wondering if there is more elegant way than what I did. Thank for this, ivop! I've been wanting a Turbo BASIC XL cartridge ever since I first read about Nir's build. -SteveS p.s. I vote for compiler conversion and if it's not to much to ask the linker would be great too. I believe it appends a compiled program to the runtime and makes it all run without prompting the user. Edited November 9, 2012 by a8isa1 1 Quote Link to comment Share on other sites More sharing options...
jvas Posted November 9, 2012 Share Posted November 9, 2012 (edited) Ignore please .... Edited November 9, 2012 by jvas Quote Link to comment Share on other sites More sharing options...
Marius Posted November 9, 2012 Share Posted November 9, 2012 years and years ago there was a nice cart from the Stichting Atari Gebruikers (The Atari Foundation) in the Netherlands. It contained at least Dos 2.5 and TurboBasic. There was something else too on that cart, but I can not remember. It had to be plugged on the parallel expansion port (IIRC). If we knew how they pacted TurboBasic and Dos 2.5 on that cart, we might be able to do something like that too on the SIC. I think Guus Assmann can tell us more... Quote Link to comment Share on other sites More sharing options...
ivop Posted November 9, 2012 Author Share Posted November 9, 2012 (edited) Turbo Basic Compiler BTW I noticed that data/sicmenu.obx that is distributed with sicmenu 0.61a does not work correctly. It crashes loading the compiler. If I assemble my own (mads sicmenu.asm) and use that one to build the cart image, everything works fine. (sicmenu 0.60a source code) Right now I have a cart with DOS 2.5, TB and its compiler. Isn't that what you want/mean Marius? Edit: I also notice that the 0.60a sicmenu loader is waaay faster than the 0.61a that I used to use before. turboc.xex turboc-source.zip Edited November 9, 2012 by ivop 1 Quote Link to comment Share on other sites More sharing options...
ivop Posted November 12, 2012 Author Share Posted November 12, 2012 Here's a complete Turbo Basic development cart. It includes the following: DOS 2.5 Turbo Basic XL 1.5 Turbo Basic XL Compiler 1.1 Turbo Basic XL Runtime Turbo Basic XL Linker The linker includes RUNTIME2.EXE, but only for a in single link "session". Also, do not forget to press ESC after linking, otherwise the file doesn't get closed. If you just want to flash your SIC! cart with this, you need ...-atr.zip If you want to use the binaries for, say, a MaxFlash cart, you need ...-binaries.zip If you want to see how it's done or change/fix things, you need ...-sources.zip Regards, Ivo turbo_basic_sic_cart-atr.zip turbo_basic_sic_cart-binaries.zip turbo_basic_sic_cart-source.zip 6 Quote Link to comment Share on other sites More sharing options...
Roydea6 Posted November 13, 2012 Share Posted November 13, 2012 Here's a complete Turbo Basic development cart. It includes the following: If you just want to flash your SIC! cart with this, you need ...-atr.zip Regards, Ivo I have flashed this cart..Requires a 256k SicCart.. And also an origanal Dos 2.5 Diskette or Atr for booting Dos. Tested all of the options, interpreter, compiler, and linker..works good even if the linker files seem to be fairly large.. Quote Link to comment Share on other sites More sharing options...
Marius Posted November 13, 2012 Share Posted November 13, 2012 Not tried yet... I only have the Sic! 4Mbit (512KB) ... will that work too with that ATR? Greetz M. Quote Link to comment Share on other sites More sharing options...
ivop Posted November 13, 2012 Author Share Posted November 13, 2012 Yes, a larger cart is no problem. It just flashes the first 16 banks and then quits. I only have 512kB here, too. For saving files, you need an empty DOS 2.5 floppy. If you do not want to reset your computer to start the DUP, you can put DUP.SYS on it and if you want to be able to link multiple programs without resetting the computer (which means power-cycling if you do not have a reset button on your cart) you can put RUNTIME2.EXE on it as well. Personally, I prefer resetting and running DUP from cart. It's also faster. Quote Link to comment Share on other sites More sharing options...
Roydea6 Posted November 14, 2012 Share Posted November 14, 2012 If you want to see how it's done or change/fix things, you need ...-sources.zip Regards, Ivo IVOP,I was wondering if you would look at the attached atr and see if could be made into a Sic Dos.. ATARI DOS 2.5 TURBO BASIC ENHANCEMENT BY RAPHAEL JAMES ESPINO SICDOS25.ATR Quote Link to comment Share on other sites More sharing options...
ivop Posted November 15, 2012 Author Share Posted November 15, 2012 I'll have a look at it if I have some time this coming weekend. Could you tell me what this enhancement is exactly? Regards, Quote Link to comment Share on other sites More sharing options...
Roydea6 Posted November 15, 2012 Share Posted November 15, 2012 (edited) I'll have a look at it if I have some time this coming weekend. Could you tell me what this enhancement is exactly? Regards, Option 'B' return to cart/basic will return to Turbo basic if previously loaded and not corrupt. Edited November 15, 2012 by rdea6 Quote Link to comment Share on other sites More sharing options...
guus.assmann Posted November 15, 2012 Share Posted November 15, 2012 (edited) Hello Marius (And others of course) What I made in that time, was connected to the cartridge port. It was an Eprom disk with also one page of Ram. And it worked as follows: From the Rom, a program was started that copied an image of Dos 2.5 to the same place it would normally load to. Then, the Eproms were checked for programs and a "magic word". In the Ram, a directory was created consisting of all program images that where found in Eprom. A call to Dup would also get this from Eprom. For this, the dos was patched just enough. A call to D2 would still go to a floppy drive. This was mainly similar to the CAR: device in Sparta-Dos-X. As for developmet tools and Mac65, my ideal solution is the Freezer 2005. This emulates the Mac65 and Bug65. (Or Basic XL/XE) and also has the freeze function to aid in bug-hunting. And it's Ram can be used as a Ramdisk. That can also be battery-backuped. BR/ Guus Edited November 15, 2012 by guus.assmann Quote Link to comment Share on other sites More sharing options...
ivop Posted November 16, 2012 Author Share Posted November 16, 2012 Option 'B' return to cart/basic will return to Turbo basic if previously loaded and not corrupt. I don't think we need a new cart for that. I looked into it and it's just a small patch to make 'B' do the same as 'M' 2080. You can just put his DUP.SYS on your working disk and write MEM.SAV. After that, if you go to DOS from the cart's Turbo Basic, that particular DUP will be read. You can also use an unmodified DUP and do M 2080 to return to Turbo Basic. 3 Quote Link to comment Share on other sites More sharing options...
+CharlieChaplin Posted August 27, 2015 Share Posted August 27, 2015 (edited) Hello folks, yesterday my younger kid lost a tooth (normal in his age!) and some time later the kids complained that they wanted to play a certain Atari game (Thera-med, unbelievable, but true). And I thought, hey, why not create a "Kidscart" with many educational and some non-educational games for them ? So I started downloading many games from Fandal`s webpage and tested them on the emulator. Knowing that my kids do not understand english, I had to exclude some games from the collection and ended up with 25 programs (some of them use german language). And then I started to flash a 256k SIC cart. for the first time. The ATR image and BIN/ROM was created on the PC with SICgen, but after flashing the cart. on the A8 many games did not work, even one of the games which they like very much (Sumator, yes my older kid loves this game!) did not work. To my surprise even the 1k games Superfly 1k and Superfly 1k+ did not work. Today I created a new ATR image using SICmenu and SICmenuFE and now these games all work fine, huh ?!? Okay, I did not have the time to test all games yet (since my kids wanted to play) but here are some screenshots showing the program list and attached you will find the ATR-image and the BIN/ROM image which should be burned onto a 256k SIC cart... Guess in the future I will have to create more Kids carts. with more and more non-educational games, until my kids are too old and more interested in "modern" games... Suggestions to the SIC creators: - please, please make a Reset-button (reset to menu) standard for a SIC cart ! Its always needed if you want to change games (otherwise you always have to switch off your A8 and back on again). Okay, you can add such a switch yourself, but it would be good if it becomes a standard for future SIC carts... - it would be nice if we could have a menu with two columns (or even three columns, when just showing the filenames without extender)... P.S.: Thera-med is menu-option A in the first screenshot (does not show here)... Superminer 2 requires some time for initializing (press the Break key and you can see why)... kidscart.zip Edited August 27, 2015 by CharlieChaplin 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.