Discussion:
Viewing AUXMEM in AppleWin
(too old to reply)
Michael J. Mahon
2020-12-10 23:56:35 UTC
Permalink
I was just using AppleWin’s debugger to examine some bank switching code,
including a couple of memory mini-windows.

How do I specify whether main or aux RAM are viewed? And how do I list the
contents of a region of aux RAM?
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
Michael 'AppleWin Debugger Dev'
2020-12-11 12:15:01 UTC
Permalink
Post by Michael J. Mahon
I was just using AppleWin’s debugger to examine some bank switching code,
including a couple of memory mini-windows.
How do I specify whether main or aux RAM are viewed?
And how do I list the contents of a region of aux RAM?
Hi Michael

Sorry that this isn't documented in the Debugger > Memory help. I'll add this to my TODO list.

This probably belongs over in comp.emulators.apple2 but to answer your questions:

a) The debugger always uses the _current memory bank soft-switch settings,_
b) You will have to use the debugger OUT commands to temporary switch to aux mem, view the memory, and then restore the bank-switched stated before continuing execution.

e.g.
<F7>
OUT 03
MD1 3488
OUT 02
<F7>

Note: You can also use the partial debugger commands O or OU instead of OUT if you wish to save typing.

Unfortunately there is no easy way to restore the current bank-switch state so you will have to manually inspect the mini-memory flags 02:Rm/x Wm/x line BEFORE changing the bank flags. (Maybe PUSHM and POPM might be a good feature request?)

Using my VIEW.DHGR program as an example...
https://github.com/Michaelangel007/apple2_hgrbyte

Let's setup some "markers" so we can easily tell which [memory] bank we are looking at:

We'll use LDA #'A' for aux, and
And LDA #'M' for main.

BLOAD TUT.DHGR
CALL-151
3488:A9 41
5488:A9 4D
-VIEW.DHGR
Press <F7>
3488L
MD1 3488
O 3 // Disassembly and Mini-memory dump will now show Aux memory
DATA // Switch to a memory dump viewing
O 2 // Disassembly and Min-memory dump again show Main memory
CODE // Switch back to disassembly viewing
Press <F7>

The soft-switch panel shows which OUT address(es) you need to toggle the soft switch(es), and the corresponding state:

02:Rm/x Wm/x

* When you execute OUT 03 you will see the the "x" displayed in inverse mode to signal that you are reading aux memory.
* Likewise when you execute OUT 02 you will see the "m" displayed in inverse mode to signal that you are reading main memory.

Sorry again that this isn't documented in the manual.

Hope this helps.

Michael, AppleWin Debugger Dev
Michael 'AppleWin Debugger Dev'
2020-12-11 17:19:06 UTC
Permalink
Created AppleWin FR #889 to track this.

https://github.com/AppleWin/AppleWin/issues/889
Michael J. Mahon
2020-12-16 05:44:52 UTC
Permalink
Post by Michael 'AppleWin Debugger Dev'
Post by Michael J. Mahon
I was just using AppleWin’s debugger to examine some bank switching code,
including a couple of memory mini-windows.
How do I specify whether main or aux RAM are viewed?
And how do I list the contents of a region of aux RAM?
Hi Michael
Sorry that this isn't documented in the Debugger > Memory help. I'll add
this to my TODO list.
a) The debugger always uses the _current memory bank soft-switch settings,_
b) You will have to use the debugger OUT commands to temporary switch to
aux mem, view the memory, and then restore the bank-switched stated
before continuing execution.
e.g.
<F7>
OUT 03
MD1 3488
OUT 02
<F7>
Note: You can also use the partial debugger commands O or OU instead of
OUT if you wish to save typing.
Unfortunately there is no easy way to restore the current bank-switch
state so you will have to manually inspect the mini-memory flags 02:Rm/x
Wm/x line BEFORE changing the bank flags. (Maybe PUSHM and POPM might be
a good feature request?)
Using my VIEW.DHGR program as an example...
https://github.com/Michaelangel007/apple2_hgrbyte
We'll use LDA #'A' for aux, and
And LDA #'M' for main.
BLOAD TUT.DHGR
CALL-151
3488:A9 41
5488:A9 4D
-VIEW.DHGR
Press <F7>
3488L
MD1 3488
O 3 // Disassembly and Mini-memory dump will now show Aux memory
DATA // Switch to a memory dump viewing
O 2 // Disassembly and Min-memory dump again show Main memory
CODE // Switch back to disassembly viewing
Press <F7>
The soft-switch panel shows which OUT address(es) you need to toggle the
02:Rm/x Wm/x
* When you execute OUT 03 you will see the the "x" displayed in inverse
mode to signal that you are reading aux memory.
* Likewise when you execute OUT 02 you will see the "m" displayed in
inverse mode to signal that you are reading main memory.
Sorry again that this isn't documented in the manual.
Hope this helps.
Michael, AppleWin Debugger Dev
Thanks, Michael, this is very helpful!
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
Loading...