Jump to content
IGNORED

Ultimate 1MB, OS-B and BASIC


Smokeless Joe

Recommended Posts

Thanks to FJC, I've got the 400/800 OS-B ROM flashed on my Ultimate 1 MB. It starts up just fine to the old Memo Pad. That takes me back.

However, I can't seem to get BASIC, or any other cartridge I have flashed, to load. I only ever see the Memo Pad. Carts load with other OSs like Hi-Speed or Stock XL, but not with OS-B.

 

Any ideas? Thanks,

 

-Joe

Edited by Smokeless Joe
Link to comment
Share on other sites

Thanks to FJC, I've got the 400/800 OS-B ROM flashed on my Ultimate 1 MB. It starts up just fine to the old Memo Pad. That takes me back.

 

However, I can't seem to get BASIC, or any other cartridge I have flashed, to load. I only ever see the Memo Pad. Carts load with other OSs like Hi-Speed or Stock XL, but not with OS-B.

 

Any ideas? Thanks,

 

-Joe

The PIA signals used to enable the internal BASIC slot on the XL/XE series were used for joystick ports 3&4 on the 400/800 OS-B. I suggest trying a translator type OS like OSNXL(OmnimonXL/OmniviewXL), Old Runner or XL-Fix. These give 400/800 compatibility but should still switch the BASIC slot on and off, the last 2 are available for download from:

https://sites.google.com/site/ataripal/ataritranslator

Link to comment
Share on other sites

Thanks to phaeron where he reminded me to flash pre-patched OS image into one of the ROM slots HERE.

 

I think you can do the same. Run the translator software which will copy the XL-OS ROM to RAM and then save the patched OS image to a file (e.g. TRANS-XL.ROM

 

I would recommend to flash the modified XL-ROM using Altirra and test the generated ROM virtually.

Once you are satisfied with the outcome, that is bug free, flash it into one of the ROM slots of the real Ultimated 1MB hardware that is installed in your computer.

 

Madi

Edited by Madi
Link to comment
Share on other sites

Thanks for the reply!

 

Using a translator makes sense. Or I could just not use BASIC in OS-B. All I need OS-B for in the first place is a handful of disk-bootable games.

 

If I really cared, I could get a physical BASIC Rev C cartridge. They don't seem too hard to find.

 

-Joe

How about a binary load BASIC C?

BASICC.zip

Link to comment
Share on other sites

Thanks to phaeron where he reminded me to flash pre-patched OS image into one of the ROM slots HERE.

 

I think you can do the same. Run the translator software which will copy the XL-OS ROM to RAM and then save the patched OS image to a file (e.g. TRANS-XL.ROM

 

I would recommend to flash the modified XL-ROM using Altirra and test the generated ROM virtually.

Once you are satisfied with the outcome, that is bug free, flash it into one of the ROM slots of the real Ultimated 1MB hardware that is installed in your computer.

 

Madi

 

 

Oo! I like this idea, especially since I just found a game that needs OS-B and BASIC; Crush, Crumble and Chomp.

 

Only... how do I save the patched OS to a file? I've got all the pieces running (Altirra 2.50, an unpatched 800XL ROM, the translator software and an U1M ROM to test it), I just need to know how to save it.

 

Thanks,

 

-Joe

Edited by Smokeless Joe
Link to comment
Share on other sites

zagnalopius had placed a little basic program to dump the OS area from $C000 to $FFFF.


Find the link HERE.


And this is the BASIC program:


5 REM CREATE 16K XL OS ROM FILE - 16384 BYTES

7 CLOSE #1

10 OPEN#1,8,0,"D:ROM16K"

20 FOR K=49152 TO 53247 : PUT#1,PEEK(K) : NEXT K

30 POKE 54017,PEEK(54017)-128

40 FOR K=20480 TO 22527 : PUT#1,PEEK(K) : NEXT K

50 FOR K=55296 TO 65535 : PUT#1,PEEK(K) : NEXT K

60 CLOSE #1


I made a dump of an Atari XL-OS ROM modified by the Atari's Translator (see attached):


Note: don't forget to insert the BASIC cartridge after flashing the new ROM as it will behave like 800B ROM.


Madi

TRANS.ROM

Link to comment
Share on other sites

Two other ways, in Altirra:

 

If you've got the U1MB flash updated, then use File > Save Firmware > Save Ultimate1MB Flash.

 

If you've got just the OS patched in RAM, break into the debugger (Debug > Enable Debugger) and use the command: .writemem <file path> $c000 $4000

Link to comment
Share on other sites

I made a dump of an Atari XL-OS ROM modified by the Atari's Translator (see attached):

Note: don't forget to insert the BASIC cartridge after flashing the new ROM as it will behave like 800B ROM.

 

Oops, I didn't express my intentions clearly enough.

 

Here are my goals:

 

1. Have an OS-B compatible OS flashed on my Ultimate 1MB

2. Have that very same OS recognize any cartridge slot I also have flashed

 

So far, I have a couple ways to achieve goal #1:

 

a. flashing a modified 10K OS-B ROM (modified with 6K of stuff at the beginning of the file)

b. flashing Madi's TRANS.ROM (above)

c. flashing a ROM file made using a translator disk and Phaeron's Altirra debugger method (also above)

 

Goal #2 is harder. None of the goal #1 methods will recognize any cartridge slot I have flashed. I use BASIC as an example but I also have PILOT and Assembler Editor flashed on the U1M. All I ever see is the Memo Pad.

 

Using a translator disk with the Stock XL ROM seems to work, but I was hoping for a more elegant solution using only the Ultimate 1MB.

 

I'm learning a lot, though. Thanks!

 

-Joe

Edited by Smokeless Joe
Link to comment
Share on other sites

I experienced the same issue when loading the 800-OSB rom via Ultimate 1MB.

 

There is a way to get BASIC working. Follow the instructions written on the 2 pictures.

The built in SpartaDOS X (SDX) must be turned on to work because we need to enter to SIDE loader for the first time.

 

Once you get to BASIC, you can can disable the built-in SDX (by pressing HELP and RESET keys simultaneously),

and can return to BASIC again by pressing "C", "Q" or "L" or even RESET.

 

The configuration will be valid even if you boot again "UNLESS" you press SHIFT key,

where BASIC will be disabled and have to do the whole process again.

 

 

garTg5.jpg

 

 

xjGT89.jpg

 

There must be other ways of doing it. Jon (flashjazzcat) may give a helping hand in this case. :)

Both of us are learning from this process.

 

Note: I also attached the U1MB ROM which I flashed the modified/Translated image into.

 

Madi

-----------------------------------------------------------------------------------------------------------------------

Edit:

I found another way to boot BASIC with U1MB that has the 800-OSB lelected as an OS:

 

Enter U1MB menu and select "SIDE hardware: On,with button".

SDX may be set enabled or disabled.. doesn't matter

Now, whatever key (L, C, Q, RESET, OPTION or SHIFT), you press you will always end up in BASIC.

Summry:

To enter basic you select :SIDE hardware: On,with button

To disable BASIC, you select: SIDE hardware: On, w/o button

 

All testing were done using Altirra.

 

madi

800-OSB.rom

Edited by Madi
Link to comment
Share on other sites

  • 11 months later...

Bumping this old topic because I've got similar problems.

 

I've taken a copy of OS-B and padded it up to the requisite 16K (16,384 bytes) with 00's in the first 6K. I've used FJC's UFLASH tool to flash it to one of my U1MB ROM slots. The problem is no matter what settings I select in the U1MB setup menu, all I get is a black screen on boot. Not sure what I'm doing wrong here. The OS-B I started with works fine in Atari800MacX (Mac), Atari800 (RPi2) and Altirra (Windows).

 

I'll worry about access to BASIC after I get Memo Pad to show up. :)

Edited by DrVenkman
Link to comment
Share on other sites

Padding OS-B should have worked -- just tried it on my 800XL w/ U1MB and it ran fine.

 

Padding the first 6K is correct: this corresponds to the 4K extension ROM at $C000-CFFF and the 2K self-test ROM at $5000-57FF. OS-B should be in the last 10K as that is at $D800-FFFF.

 

OS-B clearing PIA port B bits shouldn't be a problem. The PIA forces both ports to input mode on reset and OS-B doesn't change that, leaving the OS ROM enabled. It might be a problem if the U1MB BIOS switches port B to output before handing off control to the OS, but AFAICT neither the original U1MB BIOS nor fjc's new BIOS does that.

Link to comment
Share on other sites

Padding OS-B should have worked -- just tried it on my 800XL w/ U1MB and it ran fine.

 

 

This is so weird. All I get with the attached rom is a black screen. It's straight-up OS-b with 6K of 00 padded to the beginning. Can someone take a look at this file and see if it works for them in a U1MB? Maybe my hex editor is doing something weird with the file when I save it?

OSBU1MB.ROM

Edited by DrVenkman
Link to comment
Share on other sites

This is so weird. All I get with the attached rom is a black screen. It's straight-up OS-b with 6K of 00 padded to the beginning. Can someone take a look at this file and see if it works for them in a U1MB? Maybe my hex editor is doing something weird with the file when I save it?

Try this:

 

ulbios29.zip

 

Tested with your padded OS ROM in Altirra and appears to work. If it fixes the issue, let me know and I'll put the update in the Ultimate 1MB BIOS thread.

  • Like 1
Link to comment
Share on other sites

Well, this is problematic. I think my U1MB is bricked. I flashed the 0.29 BIOS, then rebooted. That went fine. But now that I've selected OS-B and rebooted, I still get the black screen. Worse, RESET + HELP does not bring me back to the setup screen, nor can I boot any floppies.

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...