Previous Thread
Next Thread
Print Thread
Joined: Mar 2007
Posts: 26
E
e5frog Offline OP
Member
OP Offline
Member
E
Joined: Mar 2007
Posts: 26
I got MESSUI 64bit v228 - to use with Windows 7, I'm a MESS user since 10 years or so.
https://messui.1emulation.com/
Not sure where to post bug reports, trying here.

Using mainly channelf (channelf.cpp) and...
... there's no "Debug" tab in "Properties" anymore - where the debugger can be activated.
Debugger can be started from command line - but not toggled on/off from the emulator window - as it can't be started.

Don't know who originally messed this up but all the ISAR addressed registers in the debugger are no longer visible, after register Q there's nothing, 48 registers gone, no way to set or read them from the debugger. The change to HKQ as 16 bit registers and skipping HU, HL, KU, KL, QU, QL is a nice change, leaves a little room. Upper or lower byte can be seen clearly anyway.
The missing ISAR addressed registered were last seen by me in version 0.146 - but not in 0.220, somewhere between these revisions they disappeared.
R16 to R63 can no longer be seen or used through debugger.

The numbering of registers is a bit confusing, when setting registers via ISAR, octal numbering is used (00-77 octal which is 00-63 decimal or 00-3F hex).
So the "IS" register shown in the debugger is showing its octal register setting as hex - it uses 00-3F. When programming you set upper or lower bits as octal... and the registers in the debugger were previously listed as decimal (0-63).
Octal numbering of registers and ISAR register would be preferable, next hexadecimal and last decimal.
As they are currently gone, perhaps this is a good time to update this feature.

Optimally all registers in octal

R00
R01
R02
..
R07
R10 , aka register 8
R11 , aka register 9 or J
R12 , register 10 aka register HU
R13 , register 11 aka register HL, with the one above they are register H
...
R20
R21
R22
R23
R24
R25
R26
R27
R30
R31
...
R77

It gets a bit messy when there are several names, don't know the best way but from register 16 they should be octal and IS register showing address as octal IMHO.


If you directly set ISAR to $23, the "IS" register would show it in octal 43, you'd scroll down in registers and see value in R43 - it would be very clear to the programmer LISU is 4 and LISL is 3 - no need for conversion tables.

Also noticed that hexadecimal numbers shown in the debugger are now H'AAAA' instead of $AAAA as before (not 0xAAAA nor AAAAh) what's the deal there? They used H'AAAA' in the pre 70's, right? O'octalnumber' and B'binarynumber'? The amount of ' in the debugger is somewhat disturbing - but I guess if the same debugger is used for all systems I'm in a minority of a minority of a minority... ad infinitum.
Disassembly command " LIS H'00' " is perhaps nice but it's written "CLR" when programming. ( That's OP code H'70' )
http://channelf.se/veswiki/index.php?title=Opcode


I can use 0.146, it's not a major problem, would have been fun to keep up with development though.

The major problems are missing debugger feature and missing registers in channelf debugger.

Last edited by e5frog; 02/07/21 12:04 AM.
Joined: Mar 2001
Posts: 16,859
Likes: 51
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 16,859
Likes: 51
I'm not immediately familiar with the Fairchild processor architecture, but in general MAME's debugger shows numbers and the disassembly in each CPU's manufacturer-recommended format. So 6502 and 6800 are $1234, Intel CPUs show 1234h, and so on. H'1234' is unusual, but it's not unknown.

Octal in the debugger was not supported in 0.146 but it is now, so if that's a more "native" way to view certain registers on that processor, it can certainly be made to do it.

It looks like the F8 disassembly / debugger formats were revamped in the fall of 2020 by prolific developer AJR with the comment that the new output "better matches the Fairchild manuals". That said, the manuals don't always exactly match up with what people who actually develop on the system need/want to see so we can adjust things as necessary.

Joined: Dec 2015
Posts: 143
Likes: 2
A
AJR Offline
Senior Member
Offline
Senior Member
A
Joined: Dec 2015
Posts: 143
Likes: 2
The 64-byte internal register file is now an address space, and can be accessed through the debugger's memory viewer and by debug expressions of the form db@<address>. This change was made partly due to reduce clutter in the state view, for similarity to other microcontrollers with internal register files in MAME such as the Intel 8048 and National's COP400, and partly to allow debug expressions to make indirect accesses with computed register numbers (as F8 instructions can do through ISAR). Oh, and it also lets you set watchpoints on those registers with the wpdset command.

Not using the CLR mnemonic was a bit of an oversight, likely due to the fact that its binary representation is equivalent to the short form of LIS H'00'. I'll add it right now.

The quote-mark syntax for base-prefixed numbers seems to have originated with IBM, and was adopted by a few other manufacturers such as Panasonic. Hitachi's original architectures used a simplified form of this omitting the trailing quote.

MAME's debugger interface assumes hexadecimal as the default radix (which necessitates some awkward workarounds for syntactic ambiguities caused by registers having names like A or BC) and is not enormously conducive to arbitrarily displaying things in octal, though you can of course enter octal numbers in debug expressions by using the 0o syntax. It would be simple to have ISAR be displayed in octal, except that would be confusing because the registers above and below it are displayed in hexadecimal.

Last edited by AJR; 02/09/21 10:15 PM.
Joined: Mar 2001
Posts: 16,859
Likes: 51
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 16,859
Likes: 51
I'd argue that if people actually developing for the hardware hate the new debugger layout and are willing to use 10-year-old MAME to avoid it, we have a problem. The driver's fairly mature so the F8 debugger is more for their benefit than ours at this point.


Link Copied to Clipboard
Who's Online Now
0 members (), 24 guests, and 2 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics9,018
Posts118,409
Members5,010
Most Online890
Jan 17th, 2020
Forum Host
These forums are hosted by www.retrogamesformac.com
Forum hosted by www.retrogamesformac.com