Jump to content

Photo

Omnivore, the Atari 8-bit Binary Editor


174 replies to this topic

#1 playermissile OFFLINE  

playermissile

    Chopper Commander

  • 225 posts

Posted Sun Jan 31, 2016 3:37 PM

Announcing Omnivore, the Atari 8-bit binary editor. It is a cross-platform app for modern hardware (running Linux, OS X and Windows) to work with executables or disk images of Atari 8-bit machines. It is a hex editor, a disassembler (with mini-assembler) and a map editor.
 
main-hex.png
 
It is still beta-level code, so testing and bug reports would be appreciated! Thanks to Kevin Savetz of the ANTIC Podcast and Wade of the Inverse ATASCII Podcast for early testing and feedback.

 

Binaries are available for Windows (64-bit) and OS X. Linux users currently have to install from source, see the README. I'm especially interested in feedback from Windows users as that version has been tested the least.
 
Features
  • Opens .ATR, .XEX, .XFD disk images in single, double, and enhanced density formats
  • Save data in same format
  • Edit entire disk image or in logical segments
  • Unlimited undo/redo
  • Copy/paste
  • Built-in support for default Atari character set
  • Custom character set support
  • Custom color definition or default NTSC or PAL colors
  • Multiple views of the same data in different windows; changes are reflected in all windows
Hex Editor
  • Displays data in multiple forms: hex, binary, character graphics
  • Select regions and copy/paste
  • Operate on hex data in selected regions (logical functions, shift/rotate, set/clear, arithmetic functions)
  • Edit hex data right in the hex grid
  • Character map supports ANTIC 2 (Graphics 0), ANTIC 4 or 5, and ANTIC 6 and 7 (Graphics 1 and 2 large character mode)
  • Character map may display either ATASCII or internal ANTIC format
  • Edit character data right in the character map window
  • Displays 6502 disassembly with memory map for Atari 8-bit or Atari 5200
  • Includes a 6502 mini assembler allowing you to change the assembly code without needing a 6502 reference card
  • Smart search that matches in hex grid, character map, or disassembly comments
  • Highlights all matches, move forward and backward among them
Map Editor
  • Edit arbitrarily wide images
  • Rectangular copy/paste
  • Select drawing character ("ink") from character set palette
  • Draw freehand
  • Draw lines
  • Draw rectangle
  • Draw filled rectangles
  • Copy between different maps
Goals
  • save in different formats
  • attach notes to regions (for reverse engineering support)
  • add a character set editor
  • add a player/missile graphics editor
  • support editing MAME ROMs (including other 8-bit processors like the Z80. Long term, maybe even 16-bit processors like the 68000)
  • support disk images for other 8-bit machines like the C64 and Apple ][

 



#2 flashjazzcat OFFLINE  

flashjazzcat

    Quadrunner

  • 12,747 posts
  • Location:United Kingdom

Posted Sun Jan 31, 2016 3:53 PM

Nice work - looking forward to trying it out.



#3 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,405 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sun Jan 31, 2016 3:53 PM

Cool!

If  you'll make a player editor, please implement third ORed color and gap when overlapping frames (like Atari Player Editor).



#4 Kyle22 OFFLINE  

Kyle22

    River Patroller

  • 3,138 posts
  • Location:McKees Rocks (Pittsburgh), PA

Posted Sun Jan 31, 2016 4:06 PM

It looks very useful.  Is it possible to compile a 32 bit Windows version?



#5 Ripdubski OFFLINE  

Ripdubski

    Stargunner

  • 1,244 posts

Posted Sun Jan 31, 2016 4:12 PM

Robs done a great job on it.  It works very well.  I especially like the map editor.



#6 ProWizard OFFLINE  

ProWizard

    River Patroller

  • 4,538 posts
  • Into Stampede
  • Location:In the cattle!

Posted Sun Jan 31, 2016 4:19 PM

This is EXCELLENT!

 

Have been waiting for this for a long time!

 

Thanks!



#7 snicklin OFFLINE  

snicklin

    River Patroller

  • 2,066 posts
  • Location:Australia

Posted Sun Jan 31, 2016 5:28 PM

It looks very useful.  Is it possible to compile a 32 bit Windows version?

 

This would be very useful!



#8 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 5:34 PM

Cool!

If  you'll make a player editor, please implement third ORed color and gap when overlapping frames (like Atari Player Editor).

 

Yeah, that looks like a great feature set. I'll aim to support everything that program does. I hadn't seen that before, so thanks for the link.



#9 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 5:36 PM

It looks very useful.  Is it possible to compile a 32 bit Windows version?

 

I will try. There's no reason the app needs 64 bit because we're not editing very big files.

 

I only have 64 bit Windows, but I may be able to install the 32 bit python and compile a 32 bit application. I'll give it a shot.



#10 MrFish ONLINE  

MrFish

    River Patroller

  • 4,211 posts
  • Location:1010-1010

Posted Sun Jan 31, 2016 5:44 PM

Good job so far.

 

Two suggestions:

1. option to view byte graphics in Antic E

2. ability to set/select the view width for byte graphics, in bytes (for either mode).


Edited by MrFish, Sun Jan 31, 2016 5:44 PM.


#11 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 5:50 PM

Good job so far.

 

Two suggestions:

1. option to view byte graphics in Antic E

2. ability to set/select the view width for byte graphics, in bytes (for either mode).

 

Good ideas. Thanks. I'll add them to the issues list: 

 

https://github.com/r...omnivore/issues



#12 MrFish ONLINE  

MrFish

    River Patroller

  • 4,211 posts
  • Location:1010-1010

Posted Sun Jan 31, 2016 6:05 PM

Another, simple one: option to view all hex values in CAPS.


Edited by MrFish, Sun Jan 31, 2016 6:05 PM.


#13 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 6:16 PM

Another, simple one: option to view all hex values in CAPS.

 

OK. Also related: I should allow the choice of upper/lower case for the disassembly as well; it's currently hardcoded as upper case.



#14 MrFish ONLINE  

MrFish

    River Patroller

  • 4,211 posts
  • Location:1010-1010

Posted Sun Jan 31, 2016 6:29 PM

OK. Also related: I should allow the choice of upper/lower case for the disassembly as well; it's currently hardcoded as upper case.

 

I prefer them all in upper-case. But yes, I know quite a few people like their mnemonics in lower-case. May want to allow keeping the comments/equates in upper-case though, as I think most people prefer them that way.



#15 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 6:31 PM

 

I prefer them all in upper-case. But yes, I know quite a few people like their mnemonics in lower-case. May want to allow keeping the comments/equates in upper-case though, as I think most people prefer them that way.

 

I agree to everything you just said. :)



#16 MrFish ONLINE  

MrFish

    River Patroller

  • 4,211 posts
  • Location:1010-1010

Posted Sun Jan 31, 2016 6:42 PM

Had some graphical glitches appear in the hex editor when changing the font type.

 

Seemed to be fixed when adjusting the pane size for the hex editor, so it must just be a refresh problem.

 

change font problem.png

 



#17 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 6:48 PM

Had some graphical glitches appear in the hex editor when changing the font type.

 

Seemed to be fixed when adjusting the pane size for the hex editor, so it must just be a refresh problem.

 

OK, thanks. What OS are you using?



#18 MrFish ONLINE  

MrFish

    River Patroller

  • 4,211 posts
  • Location:1010-1010

Posted Sun Jan 31, 2016 6:53 PM

Win 7 64-bit



#19 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 7:03 PM

Win 7 64-bit

 

Windows has not had much testing. I'll try to build a 32 bit version and debug some of the issues.



#20 snicklin OFFLINE  

snicklin

    River Patroller

  • 2,066 posts
  • Location:Australia

Posted Sun Jan 31, 2016 7:18 PM

Would it be possible to automate a little more of the Linux build? i.e. Just have a shell script which prompts for a github account and its details and then downloads everything and installs it?



#21 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 8:16 PM

Would it be possible to automate a little more of the Linux build? i.e. Just have a shell script which prompts for a github account and its details and then downloads everything and installs it?

 

I'll add it to the list, but because of the different flavors of unix, it might be hard to guarantee that it would work on other systems. I only have Gentoo and Ubuntu.



#22 snicklin OFFLINE  

snicklin

    River Patroller

  • 2,066 posts
  • Location:Australia

Posted Sun Jan 31, 2016 8:19 PM

 

I'll add it to the list, but because of the different flavors of unix, it might be hard to guarantee that it would work on other systems. I only have Gentoo and Ubuntu.

 

Good point! Perhaps if you account for the most popular distributions then you'll be OK. I guess that'll be Ubuntu/Linux Mint for home users. They should work with each other. I can test Linux Mint if you like.



#23 fujidude OFFLINE  

fujidude

    River Patroller

  • 4,697 posts
  • Location:United States of America

Posted Sun Jan 31, 2016 8:29 PM

 

I will try. There's no reason the app needs 64 bit because we're not editing very big files.

 

I only have 64 bit Windows, but I may be able to install the 32 bit python and compile a 32 bit application. I'll give it a shot.

 

Go grab yourself "WinPython" and put it on a flash drive.  You can have several versions, 2, 3, 32, 64, etc.  Each one is an environment unto itself.  Then go download PyInstaller.  Use the WinPython Control Panel program to install the PyInstaller package you got.  Then you're in business the easy way.

 

EDIT: Yes, WinPython comes with numpy, wx, etc. already installed (including Qt and tons of other often used ones).


Edited by fujidude, Sun Jan 31, 2016 8:51 PM.


#24 playermissile OFFLINE  

playermissile

    Chopper Commander

  • Topic Starter
  • 225 posts

Posted Sun Jan 31, 2016 9:31 PM

 

Go grab yourself "WinPython" and put it on a flash drive.  You can have several versions, 2, 3, 32, 64, etc.  Each one is an environment unto itself.  Then go download PyInstaller.  Use the WinPython Control Panel program to install the PyInstaller package you got.  Then you're in business the easy way.

 

EDIT: Yes, WinPython comes with numpy, wx, etc. already installed (including Qt and tons of other often used ones).

 

Thanks for the link. I'm not much of a windows person so hadn't run across WinPython before. I also have used and have some history with the arcane py2exe, but maybe I should try the PyInstaller instead. It claims to work across multiple platforms as well, maybe with the same recipes? Worth checking out, thanks!



#25 fujidude OFFLINE  

fujidude

    River Patroller

  • 4,697 posts
  • Location:United States of America

Posted Sun Jan 31, 2016 10:09 PM

Hope the info is useful.  I've only used PyInstaller to make stand alones, and yes it worked under Linux just great too.  I chose that after I did quite a bit of research into what would be the most useful and easy to use.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users