Jump to content

Photo

rom to exe

cartridge rom exe disk

16 replies to this topic

#1 hloberg OFFLINE  

hloberg

    Dragonstomper

  • 689 posts
  • Location:Now south of Austin. Really.

Posted Wed Oct 25, 2017 7:36 PM

is there a way to convert a rom file to an exe file. I want to put a cartridge on a disk and run it from there.



#2 David_P ONLINE  

David_P

    Dragonstomper

  • 841 posts
  • Location:Canada

Posted Wed Oct 25, 2017 7:46 PM

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.



#3 hloberg OFFLINE  

hloberg

    Dragonstomper

  • Topic Starter
  • 689 posts
  • Location:Now south of Austin. Really.

Posted Wed Oct 25, 2017 8:20 PM

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.



#4 Wrathchild OFFLINE  

Wrathchild

    Stargunner

  • 1,879 posts
  • Location:Reading, UK.

Posted Thu Oct 26, 2017 2:24 AM

Take your pick from the atarionline.pl files here



#5 baktra OFFLINE  

baktra

    Moonsweeper

  • 391 posts
  • Location:Czech republic

Posted Thu Oct 26, 2017 2:30 AM

There is a utility that can help - ROM2EXE.  You need DOSBox and CSWDPMI to make it working.

Don't expect much from the utility. A lot of cartridges are just much more than a ROM - Extra circuitry, different banking schemes etc. These the  ROM2EXE utility cannot handle.



#6 Wilheim OFFLINE  

Wilheim

    Chopper Commander

  • 124 posts

Posted Thu Oct 26, 2017 6:41 AM

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 took the original atr disk version from atarimania and converted it into an xex using Pirate's Treasure Chest. It worked.



#7 SS OFFLINE  

SS

    Quadrunner

  • 5,701 posts
  • Location:Lehigh Valley, Pennsylvania

Posted Thu Oct 26, 2017 2:36 PM

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.co...index.php?idx=M



#8 hloberg OFFLINE  

hloberg

    Dragonstomper

  • Topic Starter
  • 689 posts
  • Location:Now south of Austin. Really.

Posted Thu Oct 26, 2017 4:45 PM

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 



#9 hloberg OFFLINE  

hloberg

    Dragonstomper

  • Topic Starter
  • 689 posts
  • Location:Now south of Austin. Really.

Posted Thu Oct 26, 2017 4:49 PM

I took the original atr disk version from atarimania and converted it into an xex using Pirate's Treasure Chest. It worked.

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



#10 Wilheim OFFLINE  

Wilheim

    Chopper Commander

  • 124 posts

Posted Wed Nov 8, 2017 11:09 AM

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

 

 

Additionally, attached is the XEX converted.

 

Best regards!

Attached Files



#11 hloberg OFFLINE  

hloberg

    Dragonstomper

  • Topic Starter
  • 689 posts
  • Location:Now south of Austin. Really.

Posted Sat Nov 11, 2017 7:51 PM

 

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

 

 

Additionally, attached is the XEX converted.

 

Best regards!

thanks!



#12 mechanerd OFFLINE  

mechanerd

    Star Raider

  • 60 posts

Posted Thu Dec 7, 2017 7:22 PM

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, Thu Dec 7, 2017 7:23 PM.


#13 1050 OFFLINE  

1050

    Dragonstomper

  • 830 posts

Posted Sun Dec 10, 2017 3:43 PM

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

#14 CharlieChaplin OFFLINE  

CharlieChaplin

    River Patroller

  • 2,587 posts

Posted Sun Dec 10, 2017 6:10 PM

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/...c/#entry3284045

 

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, Sun Dec 10, 2017 6:16 PM.


#15 mechanerd OFFLINE  

mechanerd

    Star Raider

  • 60 posts

Posted Sun Dec 10, 2017 8:29 PM

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



#16 mechanerd OFFLINE  

mechanerd

    Star Raider

  • 60 posts

Posted Sun Dec 10, 2017 8:34 PM

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/...c/#entry3284045

 

  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.

 



#17 1050 OFFLINE  

1050

    Dragonstomper

  • 830 posts

Posted Mon Dec 11, 2017 9:31 AM

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/...c/#entry2973807

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.





Also tagged with one or more of these keywords: cartridge, rom, exe, disk

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users