hex edit [message #410810] |
Tue, 07 September 2021 11:23 |
Steven Nelson
Messages: 91 Registered: January 2013
Karma: 0
|
Member |
|
|
What are options for editing a prodos bin/sys file? I want to hex edit a file and replace instances of '73C0' with '71C0'. I could use BLOCK.WARDEN from ProSel and block edit the file. I could use copy2plus and sector edit the file (messier). Is there a simpler way of editing the file without reading/editing/writing blocks? Bloading the file into memory using basic.system seems like a good option but I don't remember monitor options for searching? Any good file hex editors?
For the curious I am trying to edit some ramworks code to work with super expander E instead of ramworks. Cards work the same except super expander e uses $c071 for bank switching and ramworks uses $c073. There are 9 instances of $c073 in the file. File length is slighly under $1700 bytes if I recall.
|
|
|
Re: hex edit [message #410812 is a reply to message #410810] |
Tue, 07 September 2021 14:31 |
Hugh Hood
Messages: 678 Registered: November 2012
Karma: 0
|
Senior Member |
|
|
Steven,
If you have a IIgs (or an emulator) handy, Ewen Wannop's ChewBagger is a
superb tool for doing what you'd like to do.
It has Find and Replace across an entire file.
<https://speccie.uk/software/chewbagger/>
Hugh Hood
in article 511eecf6-64e2-49ab-ac82-40e1995738cen@googlegroups.com, Steven
Nelson at nelsonse48@gmail.com wrote on 9/7/21 10:23 AM:
> What are options for editing a prodos bin/sys file? I want to hex edit a file
> and replace instances of '73C0' with '71C0'. I could use BLOCK.WARDEN from
> ProSel and block edit the file. I could use copy2plus and sector edit the
> file (messier). Is there a simpler way of editing the file without
> reading/editing/writing blocks? Bloading the file into memory using
> basic.system seems like a good option but I don't remember monitor options for
> searching? Any good file hex editors?
>
> For the curious I am trying to edit some ramworks code to work with super
> expander E instead of ramworks. Cards work the same except super expander e
> uses $c071 for bank switching and ramworks uses $c073. There are 9 instances
> of $c073 in the file. File length is slighly under $1700 bytes if I recall.
|
|
|
Re: hex edit [message #410837 is a reply to message #410810] |
Wed, 08 September 2021 01:52 |
Hugh Hood
Messages: 678 Registered: November 2012
Karma: 0
|
Senior Member |
|
|
On 9/7/2021 10:23 AM, Steven Nelson wrote:
>
> For the curious I am trying to edit some ramworks code to work with
> super expander E instead of ramworks. Cards work the same except
> super expander e uses $c071 for bank switching and ramworks uses
> $c073. There are 9 instances of $c073 in the file. File length is
> slightly under $1700 bytes if I recall.
>
Steven,
I don't know which version of AppleWorks you're working with here, but
in version 5.1 I noticed 6 instances of $C073 in 'APLWORKS.SYSTEM' and 6
instances of $C073 in 'SEG.AM'. The latter file is the aux card memory
manager routines.
I _thought_ there might be one other place where #$C0 was loaded into
the 'X' register and #$73 into the 'Y' register for further processing,
but I was not able to locate that on my quick re-inspection, so I may
have imagined that.
Hugh Hood
|
|
|
Re: hex edit [message #410838 is a reply to message #410837] |
Wed, 08 September 2021 01:59 |
Hugh Hood
Messages: 678 Registered: November 2012
Karma: 0
|
Senior Member |
|
|
Steven,
I shouldn't jump to conclusions. You never mentioned AppleWorks here as
the program you needed to modify.
Apologies.
Hugh Hood
On 9/8/2021 12:52 AM, Hugh Hood wrote:
> On 9/7/2021 10:23 AM, Steven Nelson wrote:
>>
>> For the curious I am trying to edit some ramworks code to work with
>> super expander E instead of ramworks. Cards work the same except
>> super expander e uses $c071 for bank switching and ramworks uses
>> $c073. There are 9 instances of $c073 in the file. File length is
>> slightly under $1700 bytes if I recall.
>>
>
> Steven,
>
> I don't know which version of AppleWorks you're working with here, but
> in version 5.1 I noticed 6 instances of $C073 in 'APLWORKS.SYSTEM' and 6
> instances of $C073 in 'SEG.AM'. The latter file is the aux card memory
> manager routines.
>
> I _thought_ there might be one other place where #$C0 was loaded into
> the 'X' register and #$73 into the 'Y' register for further processing,
> but I was not able to locate that on my quick re-inspection, so I may
> have imagined that.
>
>
>
>
> Hugh Hood
>
|
|
|
Re: hex edit [message #410842 is a reply to message #410838] |
Wed, 08 September 2021 10:10 |
Steven Nelson
Messages: 91 Registered: January 2013
Karma: 0
|
Member |
|
|
On Wednesday, September 8, 2021 at 12:59:23 AM UTC-5, Hugh Hood wrote:
> Steven,
>
> I shouldn't jump to conclusions. You never mentioned AppleWorks here as
> the program you needed to modify.
>
> Apologies.
>
Thanks Hugh. Your knowledge of Appleworks is amazing. The code I wanted to modify is KM.RAMWORKS from A2OSX. Remy GIBERT kindly modified KM.RAMWORKS to work with both ramworks and super expander e. Ramworks uses $c073 for bank switching. Super expander E uses $c071. Alas my IIe died before I could test the new code. I modified my Appleworks years ago to work with the Super expander E (probably with your help). I don't remember making that many $c073 changes though :-) I will get my IIe working again (I still have 8 spares in the basement). It is power supplies I am out of and I just put a reactive computing replacement in the dead IIe a couple months ago. Voltages check out but maybe it isn't supplying enough current. I need to swap to confirm. Motherboard wise I don't know where to begin. Apple2-4fr!
|
|
|