Jump to content
IGNORED

What New Linux Utilities Would Be Useful?


Recommended Posts

I've written a number of utilities for managing ATR files, binary load (.XEX) and BASIC file analysis, disassembler, and such.  I'm between jobs right now, and would like to have an excuse to write something in a language I have less experience in.  Are there any utilities that would be helpful that you haven't seen or where a new version might be useful?

 

And note that while my coding is Linux-based, the programs can often also be compiled for Mac or Windows.

  • Like 3
Link to comment
Share on other sites

On 3/16/2024 at 6:24 PM, pcrow said:

I've written a number of utilities for managing ATR files, binary load (.XEX) and BASIC file analysis, disassembler, and such.  I'm between jobs right now, and would like to have an excuse to write something in a language I have less experience in.  Are there any utilities that would be helpful that you haven't seen or where a new version might be useful?

 

And note that while my coding is Linux-based, the programs can often also be compiled for Mac or Windows.

Would you happen to have a comprehensive list of utilities you already have?

 

  • Like 1
Link to comment
Share on other sites

5 hours ago, baktra said:

Would you happen to have a comprehensive list of utilities you already have?

This would be very helpful.  I have number that I'm using installed, but would like to see a wider range so that the obvious gaps stick out a bit more.

Link to comment
Share on other sites

6 hours ago, baktra said:

Would you happen to have a comprehensive list of utilities you already have?

Everything is on github:

https://github.com/pcrow/atari_8bit_utils

 

You'll find there:

  • ATRFS: Mount Atari disk images as native file systems (uses FUSE for user-space file systems; works on Linux and Mac)
  • disasm: Disassembler focusing on boot sectors and binary load files; traces execution to avoid disassembling data blocks
  • atr2unix/unix2atr: Extract or create ATR files from a set of local files (inspiration for ATRFS above)
  • binload: Binary load file analyzer
  • basicanalyzer: Parse BASIC files
  • sio2linux: Serve ATR files over an SIO2PC cable (I used this with an original RS232 cable)
  • DISK: BASIC/ASM sector editor and more (mostly written in the 80s)
  • basic autorun: Another autorun file for BASIC programs; enables BASIC on XL; only one sector long
  • mydos_bmenu: binary load menu for large MyDOS images (compiled BASIC; uses joystick)

I know some of these are redundant with other utilities that are probably better (like sio2linux).  Several have there own threads here (ATRFS, disasm, and basic_autorun).

  • Like 5
  • Thanks 2
Link to comment
Share on other sites

From the Mac side, I can confirm that a number of the utilities I'm using are straight builds from the Linux sources.  None of these exist in package managers (Homebrew, in particular), so I'm having to hunt for the ones that are rarely-used yet still somewhere on the disk that haven't already been mentioned.  Note that as I run multiple OS platforms, not all of these are specific to use on MacOS.

There are almost certainly others, but, as mentioned previously, they need to be ferreted out.

 

And on the subject of package managers, I would absolutely love to see some or all of these make it into package management.  That's an entire other conversation unto itself, but it would help immensely with knowing what's installed and what isn't.  Management, in other words :) 

  • Like 1
Link to comment
Share on other sites

As a beginner Linux user who has just managed to get Altirra to run on wine in Linux Mint, I'd love more information on running Atari on Linux.  I'd like a video on setting up a developer load of tools for Linux and Atari as I intend to never run Windows again after I get that done.

Well that and proving that I can do my taxes on a Linux machine as well.  This is well under way.

Link to comment
Share on other sites

If you like to have a challenge, what about natively executing (Turbo-)Basic in a console window?

 

Of course supporting all hardware bells and whistles is likely unsupported (and USR/6502 emulation too), but it would be nice to have for e.g. data transformation tools or prototypes the possibility to just run the BASIC tokens natively (without emulation) very fast in a standard shell...

Edited by Irgendwer
Link to comment
Share on other sites

40 minutes ago, Irgendwer said:

If you like to have a challenge, what about natively executing (Turbo-)Basic in a console window?

 

Of course supporting all hardware bells and whistles is likely unsupported (and USR/6502 emulation too), but it would be nice to have for e.g. data transformation tools or prototypes the possibility to just run the BASIC tokens natively (without emulation) very fast in a standard shell...

That's an interesting idea.  My basic analyzer can already generate a full listing from the save file (including several BASIC variants).  If I start with just doing text (GR.0), it might not be too insane.

 

Another related project would be a BASIC compiler, though I don't know how far I would get in that.  What I would find interesting would be to track variable usage to determine the range of values for each variable so that it would be clear what data type to use (uint8, int16, uint16, float, etc.).  I like to imagine a variant of BASIC with execution support for different data types where an external optimizer could convert types appropriately.

  • Like 2
Link to comment
Share on other sites

17 hours ago, Irgendwer said:

If you like to have a challenge, what about natively executing (Turbo-)Basic in a console window?

 

You could do this with the atari800 emulator. You have to compile your own version with special settings, though.

Link to comment
Share on other sites

14 minutes ago, sanny said:

@pcrow, how about a Mac/65 file analyzer. Or is it covered by the basicanalyzer?

Does anyone use this on Linux, as it's processing HTML, it should work, might try pi my Pi5 later :)

It decodes all sorts of Atari type files, MAC/65 included and has the option to download files from

.ATR's etc.

 

GitHub - pvbestinfoo/Atari_8-Bit_Rom_Image_File_Explorer: Atari 8-bit Rom Image File Explorer based upon ATR Image Explorer

Link to comment
Share on other sites

22 hours ago, pcrow said:

Everything is on github:

https://github.com/pcrow/atari_8bit_utils

 

You'll find there:

  • ATRFS: Mount Atari disk images as native file systems (uses FUSE for user-space file systems; works on Linux and Mac)
  • disasm: Disassembler focusing on boot sectors and binary load files; traces execution to avoid disassembling data blocks
  • atr2unix/unix2atr: Extract or create ATR files from a set of local files (inspiration for ATRFS above)
  • binload: Binary load file analyzer
  • basicanalyzer: Parse BASIC files
  • sio2linux: Serve ATR files over an SIO2PC cable (I used this with an original RS232 cable)
  • DISK: BASIC/ASM sector editor and more (mostly written in the 80s)
  • basic autorun: Another autorun file for BASIC programs; enables BASIC on XL; only one sector long
  • mydos_bmenu: binary load menu for large MyDOS images (compiled BASIC; uses joystick)

I know some of these are redundant with other utilities that are probably better (like sio2linux).  Several have there own threads here (ATRFS, disasm, and basic_autorun).

 

Good tools. As a good idea to unify them and make a user interface. Also you can install it easily from a package so that people with little knowledge can use it without compiling.

 

  • Like 1
Link to comment
Share on other sites

33 minutes ago, pcrow said:

I haven't used it, but wouldn't it just be assembly text files?

No, it tokenizes the code much like BASIC see here:-

You can however "LIST" the file as text and "ENTER" if required.

 

image.thumb.png.36b312d0392800c7e0e50f43fbe85ef5.png

Edited by TGB1718
Link to comment
Share on other sites

On 3/18/2024 at 9:03 AM, x=usr(1536) said:

From the Mac side, I can confirm that a number of the utilities I'm using are straight builds from the Linux sources.  None of these exist in package managers (Homebrew, in particular), so I'm having to hunt for the ones that are rarely-used yet still somewhere on the disk that haven't already been mentioned.  Note that as I run multiple OS platforms, not all of these are specific to use on MacOS.

There are almost certainly others, but, as mentioned previously, they need to be ferreted out.

 

And on the subject of package managers, I would absolutely love to see some or all of these make it into package management.  That's an entire other conversation unto itself, but it would help immensely with knowing what's installed and what isn't.  Management, in other words :) 

Yes!  Not sure if we have anyone around that is a debian maintainer, but getting a package of 'atari8-utils' or something built and submitted to Debian would be awesome.  And that'd spread out to all of the other Debian based distributions, like Ubuntu and cover the vast majority of users.  An RPM for Fedora would help as well.

  • Like 1
Link to comment
Share on other sites

46 minutes ago, TGB1718 said:

No, it tokenizes the code much like BASIC

Interesting.  I don't know how useful extracting those would be.  I suppose it would be the first step to support using MAC/65 source code with a cross-assembler.

Link to comment
Share on other sites

14 minutes ago, leech said:

Yes!  Not sure if we have anyone around that is a debian maintainer, but getting a package of 'atari8-utils' or something built and submitted to Debian would be awesome.  And that'd spread out to all of the other Debian based distributions, like Ubuntu and cover the vast majority of users.  An RPM for Fedora would help as well.

I've been doing some light massaging on getting them included in Homebrew for the Mac.  Haven't tried for a while; perhaps it's time to pick that up again.

 

BTW: @pcrow: I should clarify that I do use some of the utilities in the atari_8bit_utils repo; the ones that I named above were chosen because they cover use cases differently to the tools you've been building as well as filling in a couple of blank spots.  fujinet-pc was a toss-in because it's a good missing link to have on hand for tnfs server access.

  • Like 1
Link to comment
Share on other sites

Not sure if there would be much demand for this, but what about Linux command line utilities to build and populate APT based images for use with SIDE2/SIDE3/U1MB systems and/or Altirra?

 

 

Edited by mr_gw454
Link to comment
Share on other sites

5 minutes ago, mr_gw454 said:

Not sure if there would be much demand for this, but what about Linux command line utilities to build and populate APT based images for use with SIDE2/SIDE3/U1MB systems and/or Altirra?

ATRFS has some support for that already.  It doesn't create APT images, but it will parse them, and you can mount the file systems within them (some require a second invocation of ATRFS if they're smaller sector sizes that don't map linearly).

Link to comment
Share on other sites

1 minute ago, pcrow said:

ATRFS has some support for that already.  It doesn't create APT images, but it will parse them, and you can mount the file systems within them (some require a second invocation of ATRFS if they're smaller sector sizes that don't map linearly).

I should have done some more research before asking.  Thanks for that info!

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