Jump to content
IGNORED

Six Forks Assembler and Linker


tjb

Recommended Posts

  • 6 years later...

This image contains the original Six Forks assembler and linker (SFASM.COM and SFLINK.COM). SFA.COM is modified such that you can press ESC to return to DOS rather than having to hit RESET or reboot.

 

SFL.COM requires either a 130XE or upgraded 800XL. It uses banked ram to allow for the creation of larger binary files.

 

I don't seem to be able to locate the original distribution diskette, so the sample program is not included.

 

I believe SFA/SFL.COM also do not require the PACKID file as outlined in the manual. In the age of hard drives, I found it to be a nuisance.

sixforks.atr

Edited by Alfred
  • Like 2
Link to comment
Share on other sites

  • 2 years later...

 

What's his name Alfred?

 

I don't remember today. His first name IIRC is Alfred, oddly enough. He would be about 75 years old now. I know I googled him a few months back so I knew it then, maybe his last name will come to me later. I know I have a bunch of handwritten notes on the asm/linker around here somewhere, not sure if his name is on them though. I only ever spoke to him once, and that's more than twenty years ago now.

Link to comment
Share on other sites

I don't remember today. His first name IIRC is Alfred, oddly enough. He would be about 75 years old now. I know I googled him a few months back so I knew it then, maybe his last name will come to me later. I know I have a bunch of handwritten notes on the asm/linker around here somewhere, not sure if his name is on them though. I only ever spoke to him once, and that's more than twenty years ago now.

 

Hmmm... interesting coincidence if his name is Alfred as you say. I'm interested in knowing so I can credit him on my website -- where I've put the Six Forks material. I appreciate your help either way.

Link to comment
Share on other sites

 

Hmmm... interesting coincidence if his name is Alfred as you say. I'm interested in knowing so I can credit him on my website -- where I've put the Six Forks material. I appreciate your help either way.

 

Alfred Hume. That's the guy's name.

  • Like 1
Link to comment
Share on other sites

  • 2 years later...

This post won't be of any interest to you cross-assembler/WUDSN coders, so you can quit reading now, haha.

 

I am slowly working on upgrading the Six Forks Assembler & Linker to give them some new features and expand their usefulness. For those who want to code on the Atari rather than use a cross-assembler, Six Forks isn't bad. I used Mac/65 for years and it's great, but as projects get larger, editing becomes more cumbersome and even with the screen off, it can take a long time to run an assembly. Eventually even Mac/65 runs out of symbol space.

 

Six Forks has its limits as well. On a stock machine, you can only create about a 10K binary in a single linker pass. The manual explains how to use one of the features that Six Forks supports to work around this. If you have an XE, I have created a version of the linker that can build object files up to around 40K or so. Six Forks assembles and links itself.

 

Anyway, if there's any interest, I'll post the occasional ATR with the updates. In preparation for migrating the Basic XE and Action! source code to Six Forks, tonight I've upgraded the assembler to handle 512 labels, and the linker to handle 768 external references, as well as created both XL and XE versions. I need to fix a bug and then the XE version will also work on an 800 with Axlon expanded ram.

 

Future changes will be to add some new directives to aid in building eproms, and adding 65C02 and 65816 support. Larger memory support will be added to the linker so that it can generate a full 64K binary.

  • Like 6
Link to comment
Share on other sites

This disk contains my current updates to Six Forks:

 

SFA - Normal Assembler, 200 label capacity, about 15K text buffer

SFAXL - 512 label capacity, text buffer reduced to about 13K

SFAXE - 512 labels, about 50K buffer

 

SFLXL - 768 external ordinals, about 14K buffer

SFLXE - 768 external ordinals, about 64k buffer

 

The XE versions are limited to 3 banks of expanded ram due to the capacity field only being a word sized variable and the binary to decimal routine only handles 16 bits. In a future update I'll patch in my 24 bit conversion routines and then both programs will use all the banks of the XE. The large text buffer of the XE assembler isn't meant to be used for all code, but to give room for macros and include files in future updates. With all 4 XE banks on my system, the linker has about an 80K buffer, which should yield around 52K of binary output. So there is still some work to do to be able to generate a full 64K EPROM file.

 

Edit: The XE versions ought to work on an 800 with Axlon ram. I haven't tested that much, but they should work.

LatestSixf.atr

Edited by Alfred
  • Like 3
Link to comment
Share on other sites

SFAXE is bugged. I forgot to update the linker file to move two of the XE enabled routines out of the window, so if the source file is bigger than about 16K it'll crash. I'm fixing it to get rid of the separate XL/XE versions, will post a new ATR then. The XE linker is fine.

  • Like 2
Link to comment
Share on other sites

Here's an updated ATR with a fixed SFAXE. I also changed my mind and enabled all four XE banks on the XE versions. Also a minor update to the ram test code to avoid it randomly thinking the machine is an 800. Under SpartaDos 3.2 the buffer sizes for both assembler and linker run around 80K. At the end, when either displays the holder bytes available, add 65536 if using the XE version. The number displayed is what the non-XE version has available to it.

LatestSixf.atr

  • Like 3
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...