Jump to content
IGNORED

rom to exe


Recommended Posts

Short answer: It depends.

 

Many ROMs have copy protection to prevent them from being run in RAM - they'll attempt overwrites of memory or other such tricks. To get them to run, you'll have to disassemble, find the copy protection routines, and remove them.

ack. the rom i'm working on is Motezuma's Revenge. The disk version looks to not be XL/XE compatible while the rom is compatible.

Link to comment
Share on other sites

ack. the rom i'm working on is Motezuma's Revenge. The disk version looks to not be XL/XE compatible while the rom is compatible.

 

I know that this doesn't exactly answer the question but you can find XL/XE compatible EXEs of both versions of "Montezuma's Revenge" on the Homesoft site.

 

http://www.mushca.com/f/atari/index.php?idx=M

Link to comment
Share on other sites

thanks all. I'm going to try ROM2EXE since it 'looks' like just a standard 8k cart just to see if I can.

then I'll check out the other versions of Mont. Revg. that was posted. Apparently I just got a weird set of files file.

funny how i came about this. I 1st got the box to the very rare 2600 version of mont. rev. but no cartridge (rats). then i was given the booklet to the 800 disk version but no disk.

I seem to get everything but the software of Montezuma Revenge. :P :-D

Link to comment
Share on other sites

  • 2 weeks later...

where you get Pirate's Treasure Chest. there are some other .atr I would like to convert to .xex for my MyIDEII

 

It doesn't work with every .atr, but at least it worked for Montezuma's Revenge. It's an atari suite. Here's the link:

 

http://www.retrobits.net/atari/treasurechest.shtml

 

 

Additionally, attached is the XEX converted.

 

Best regards!

Montezuma final.XEX

Link to comment
Share on other sites

  • 4 weeks later...

Okay, so how does one make an XEX file to boot from RespeQt from a .rom or .car file? I have an Omnimon XE to dump a cart.
The reason is thus:

I want to boot a 130XE with Basic XL from OSS which the cart has gone missing. I know the .rom 1.02 and 1.03 runs on Altirris.

I then want to boot an .atr of the old Action Annex BBS software.

I can get the software to run on Altiris, but want to bring up the old Atari 130XE or 800 to run on the actual hardware.

I do not have a real disk drive anymore. Just a few drives mounted on PCs for scavenging files. So all I have is sio2pc without the APE costly tools.

 

I don't know if anyone has made a chain loaded bootable disk with sectors 1-3 load a loader, which loads a cartridge .rom file, then go looking for a DOS to boot.

It's been about 30 years since I worked with asm 6502, but then again I helped the BBS author make a serial i/o routine to open and shut the R: properly on the 850 and ATR 8000. Xmodem was 'light speeded' up to 9600 bps

Edited by mechanerd
Link to comment
Share on other sites

A real machine would have a major headache trying to

emulate a bank switching cart like BASIC XL. The

only reason it runs on emulators is because the

emulator has that extra code and storage place to

emulate the bank switching cart with, the real

machine has only the cartridge hardware and it's

missing.

 

Method might be better done with reverse order.

DOS is booted which then goes looking for

AUTORUN.SYS file(s) which then load the cart

data. Files such as AUTORUN.SYS have headers that

tell DOS where to place the code while having

two unique places to RUN or INIT the loaded code.

INIT address of 0x02E2, 0x02E3 is always run as

soon as it is changed from RTS address pointed to

by DOS as it loads memory as told to by the header.

This is why AUTORUN.SYS files should only be using

INIT address to run code and should always end with

RTS instruction so that DOS will just resume loading

the rest of the AUTORUN.SYS file. And this means

AUTORUN.SYS files can be appended to do things in

desired order. RUN address 0x02E0, 0x02E1 is jumped

to only after the file is finished loading and

IOCB is closed.

 

http://www.atarimania.com/documents/Mapping-the-Atari.pdf

pg 65,66 --- pdf pg 99,100

 

Cartridge also has INIT and RUN address but at the

end of the cartridge space.

Mapping the Atari

pg 103,104 --- pdf pg 137,138

 

Executable files always start with FF, FF double

bytes to indicate an executable file follows.

Load to address pair comes next followed by ending

address pair to load data to. Double FF can be repeated,

which will be ignored as next in the file structure

and/or you can have just another pair of load addresses,

start and end. And this pattern can go on as many

times as you need it to. RUN Address can be changed

many times but the only one that is RUN is the last one

loaded.

It would be a headache WITH the real BASIC XL cart,

without it, I have serious doubts it can be done

on a real machine at all. You would need to write a

custom banking system that used extended memory to hold

the bank switched cart data and then move it along

with changed banking address that is looked at every

interrupt to see if a new bank is supposed to be

there or not. Pure hell if you ask me so I really

doubt anyone, if they have written such a thing, is

here and now to give it away.

 

So very much easier to get a real BASIC XL cart.

And then start pulling the hair out getting

AUTORUN.SYS to play nice.

 

Welcome back BTW, nice when that happens.

  • Like 1
Link to comment
Share on other sites

Well,

 

there is the "Basic XL runtime" version 1.00 created by OSS. Its not a runtime that executes compiled code, instead it just runs/executes Basic XL programs (but one cannot list nor edit them).This runtime was made, so that authors of BXL programs could share their stuff with friends wo do not own the BXL cartridge.

 

Alas, the runtime version 1.00 does not run every BXL program it seems, found one or two BXL programs that really really do require a Basic XL cart 1.02 or 1.03, but for those Atarians that do not own a Basic XL cart its a cool substitute (and better than nothing). The BXL runtime comes as a COM/XEX file and can be used as an Autorun.SYS under DOS (tested it with some DOS 2.x versions), it will look for a file named Autorun.BXL and execute it automatically. If it does not find an Autorun.BXL on the disk or if Break, Control-3 or other keys have been pressed, it prompts you to insert a disk with an Autorun.BXL file... (one may also use this BXL runtime to execute Atari Basic programs with it, just rename them to Autorun.BXL, e.g. a menu program that lists and runs several files).

 

See for posts 7 (Basic XL runtime is on the Basics.ATR) and post 14 here:

http://atariage.com/forums/topic/240811-u-basic/?do=findComment&comment=3284045

 

But if you absolutely want a fileversion of Basic XL 1.02 or 1.03 that executes as an Autorun from DOS you have to ask a good hacker/cracker/programmer who does this for you. I have not seen such a fileversion of the Basic XL 1.02 or 1.03 cart yet (most likely because there already is the BXL runtime 1.00). It is surely doable (I do have two fileversions of the Action! cart. in my collection) but requires some work and the hacker may have to load the fileversion of BXL into the RAM under the OS, so that there still is enough free memory for most BXL programs...

Edited by CharlieChaplin
  • Like 1
Link to comment
Share on other sites

A real machine would have a major headache trying to

emulate a bank switching cart like BASIC XL. The

only reason it runs on emulators is because the

It would be a headache WITH the real BASIC XL cart,

without it, I have serious doubts it can be done

on a real machine at all. You would need to write a

custom banking system that used extended memory to hold

the bank switched cart data and then move it along

with changed banking address that is looked at every

interrupt to see if a new bank is supposed to be

there or not. Pure hell if you ask me so I really

doubt anyone, if they have written such a thing, is

here and now to give it away.

 

So very much easier to get a real BASIC XL cart.

And then start pulling the hair out getting

AUTORUN.SYS to play nice.

 

Welcome back BTW, nice when that happens.

Not only that, the autorun.sys I typically load is for the old action Annex BBS R: handler for either the 850 interface or the ATR8000 loader.

 

So let's say we have a simple .rom or .bin or .car file like Starraid.bin.

 

How does one make a .com .exe or .xex. ?

Link to comment
Share on other sites

Well,

 

there is the "Basic XL runtime" version 1.00 created by OSS. Its not a runtime that executes compiled code, instead it just runs/executes Basic XL programs (but one cannot list nor edit them).This runtime was made, so that authors of BXL programs could share their stuff with friends wo do not own the BXL cartridge.

 

Alas, the runtime version 1.00 does not run every BXL program it seems, found one or two BXL programs that really really do require a Basic XL cart 1.02 or 1.03, but for those Atarians that do not own a Basic XL cart its a cool substitute (and better than nothing). The BXL runtime comes as a COM/XEX file and can be used as an Autorun.SYS under DOS (tested it with some DOS 2.x versions), it will look for a file named Autorun.BXL See for posts 7 (Basic XL runtime is on the Basics.ATR) and post 14 here:

http://atariage.com/forums/topic/240811-u-basic/?do=findComment&comment=3284045

 

Thanks so much I hope this fixes my need for a Basic XL to get the BBS running on a SIO2PC cabled only Atari BBS with massive files on the PC side.

I did get the BBS software with Basic XL 1.03 on Altirris .. Of course I need a real r: handler on there to allow telnet.. That is in the works.

 

Link to comment
Share on other sites

So let's say we have a simple .rom or .bin or .car file like Starraid.bin.

 

How does one make a .com .exe or .xex. ?

Well Ok, Star raiders is not simple though because it's

a diagnostic cart which means it fires off before the

OS has completed it's own initialization process.

Somewhere in between almost done with that job, this

particular cart just takes over, so loading of DOS by

OS code isn't happening. NOT simple at all then.

 

http://atariage.com/forums/topic/224569-a-dump-of-rev-b-atari-basic/?do=findComment&comment=2973807

 

Use a hex editor on these BASIC object files and compare

them to the BASIC.ROM files they are related too.

Maybe disassemble the object files to spot the

twists and turns needed to just get BASIC to run

as an xex file - can get very complex. Main issue

going on here is that the display list is occupying

cart area so E: needs to be re-opened after proper

ram size is adjusted downward to move the display

list.

 

I got my feet wet using disk editors on real floppies.

A hex editor has the same look and feel, but the

basics were learned observations of Atari files on

disks. Don't know how you are going to pick it

up as second nature without that hardware.

  • Like 1
Link to comment
Share on other sites

I found the Basic XL turbo 1.5 needed.. It was in the programming area.
By Happy Computer.. Ostrwoski.. I fixed his Chicken game when it was posted in Antic magazine a long ago..
My friend and I figured it out over an afternoon and wrote them a letter.

You are right about software copy protection.. I did cursory look a few cartridges and saw overwrite in the rom area.. :}

I was able to fix one 8KB rom file to a .EXE and it boots with RespeQT as a simple rename to an .xex file.
I won't say which cart it was, but it was one that went bad. I own the original.

 

Attached is also the basic description of boot headers to make executable files from the Omnimon XL manual.
It works the same for either version, and the file headers make sense to me once again.

In there he describes how to make an exe out of non copyright BASIC cart.

 

 

 

 

tbasic.atr

Full text of _Atari Omnimon XL users guide_.html

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...