Megalextoria
Retro computing and gaming, sci-fi books, tv and movies and other geeky stuff.

Home » Digital Archaeology » Computer Arcana » Apple » Apple II » 6502bench SourceGen disassembler
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
6502bench SourceGen disassembler [message #374136] Fri, 28 September 2018 13:56 Go to next message
Anonymous
Karma:
Originally posted by: fadden

I wrote a disassembler for 6502 and related processors, and could use some help testing it.

Demo video here: https://www.youtube.com/watch?v=dalISyBPQq8

This is a C# .NET application that uses the WinForms API. I haven't worked with WinForms or released a C# app for Windows before -- my C# experience is largely in Unity with an Android target -- so there's a reasonable likelihood that what I've put together simply won't work at all. So far all testing has been done in Windows 10.

This is an alpha-quality product. I consider it feature-complete but unfinished. It may change significantly, or not at all, before the 1.0 release.

Some things that need sorting out:

- Does it work at all for anybody else?
- Does the Debug version work for anybody who doesn't have developer tools installed?
- I make heavy use of Consolas, a mono-spaced font that comes with various Microsoft products, but may not ship with the base OS. Is this something I need to worry about?
- Does this work on Windows 7/8?

There's a separate issue with cc65 code generation that I need to sort out with the authors of that project. I may have jumped the gun on post-2.17 support.

There's also the question of whether it'll work on Linux or Mac OS X. I've deliberately avoided Windows-specific constructs, so there's a chance it'll run under Mono. I'm not sure what the state of WinForms portability is though.

The current set of examples and symbol files are pretty Apple II-centric, because that's what I know. The disassembler is intended to be multi-system, so I'll need to find some C64/Atari people to help with symbol files and such. (Heck, the Apple II symbols are a little thin in some areas.)

My thanks in advance for any assistance.


GitHub project page: https://github.com/fadden/6502bench

Releases area with downloads: https://github.com/fadden/6502bench/releases

Vanity URL: https://6502bench.com/
Re: 6502bench SourceGen disassembler [message #374147 is a reply to message #374136] Fri, 28 September 2018 19:30 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: James Davis

WOW! Watched your demo. You're a GENIOUS!

I am not familiar with CC65 and haven't used Merlin 8/16 much, ever, (its disassembler) for about 1/4 century. I wrote an "All Purpose Disassembler" for the A2 and for AppleWorks back in the late 1980s or early 1990s. I always liked the A2: "DOS EdAsm," "ProDOS Assembly Tools," and "The P.A.C.K. (Programmer's Assembly-language Construction Kit)," and traditional A2 disassembly dumps (into text-files) to analyze manually (the hard way). Do you have an option to adhere to traditional 6502/65c02 (etc.) mnemonics?
Re: 6502bench SourceGen disassembler [message #374150 is a reply to message #374147] Fri, 28 September 2018 20:56 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Friday, September 28, 2018 at 4:30:13 PM UTC-7, James Davis wrote:
> Do you have an option to adhere to traditional 6502/65c02 (etc.) mnemonics?

The Merlin 32 code generator has a fair chance of producing code that will work in Merlin on the Apple II, although I'm not paying attention to file sizes, so some manual splitting may be required. I'm also not truncating long end-of-line comments; not sure if Merlin's "convert from text to Merlin format" feature takes care of that.

I did all of the development of fdraw in KEGS with Merlin 8/16, to get that authentic retro flavor. The tools are plenty fast that way, but the 80x24 screen gets claustrophobic after a while, and once you've had multiple files open on a big monitor it's hard to go back. There were times when I pulled a file out into Windows just to see more of it on-screen at once. Cross-assembly has a lot in its favor, even with crazy-fast emulators.

The mammoth "to do" list (https://github.com/fadden/6502bench/wiki/TO-DO-List) does mention targeting native assembler formats, but that's a low priority.
Re: 6502bench SourceGen disassembler [message #374151 is a reply to message #374136] Fri, 28 September 2018 22:51 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: James Davis

I have been trying it on Windows 7 Ultimate with a 1440x900 resolution LCD monitor. The help system works; no problems there. The disassembler application's window is not stable; it does not remember where it was from run to run; every time I run it, it shifts down and to the right 1/4" in the "Windows" cascade sequence; it won't stay maximized, from run to run, nor stay put when stacked, nor from side to side; it cascades no matter what size the window is set to; if stacked or side to side, it remembers its size (having closed prior with Control-eXit), but still cascades off the bottom and right sides.

I'll report more problems as I encounter them...!
Re: 6502bench SourceGen disassembler [message #374152 is a reply to message #374151] Fri, 28 September 2018 23:37 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Friday, September 28, 2018 at 7:51:09 PM UTC-7, James Davis wrote:
> The disassembler application's window is not stable; it does not remember where it was from run to run; every time I run it, it shifts down and to the right 1/4" in the "Windows" cascade sequence; it won't stay maximized, from run to run, nor stay put when stacked, nor from side to side; it cascades no matter what size the window is set to; if stacked or side to side, it remembers its size (having closed prior with Control-eXit), but still cascades off the bottom and right sides.


The window position is currently set to "windows default location", its size is not saved if it's minimized or maximized, and the min/max state is not recorded. It hadn't actually occurred to me to save the location and maximization state, but that does seem like a useful thing.

I tried an experiment with Visual Studio. It saves its screen location, and if it was maximized when you closed it, it'll be maximized when you start it again. If it was minimized, and you close it with "close window" on the task bar icon, it briefly opens up before closing -- possibly so it can capture the un-minimized size before it exits. Seems like a good model to follow.
Re: 6502bench SourceGen disassembler [message #374154 is a reply to message #374152] Sat, 29 September 2018 03:17 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: James Davis

I am not certain, but I think that a lot of MS Windows' default behavior for application windows is built into their API; and can be called up for service by any application.
Re: 6502bench SourceGen disassembler [message #374211 is a reply to message #374136] Sun, 30 September 2018 19:58 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: frank_o_rama

Win 7 pro here. Couldn't get it to start up.
f


On Friday, September 28, 2018 at 10:56:11 AM UTC-7, fadden wrote:
> - Does this work on Windows 7/8?
>
Re: 6502bench SourceGen disassembler [message #374212 is a reply to message #374211] Sun, 30 September 2018 20:22 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Sunday, September 30, 2018 at 4:58:21 PM UTC-7, frank_...@hotmail.com wrote:
> Win 7 pro here. Couldn't get it to start up.

Hrm. I have a report of success on a Win7 system, so it's not fundamentally incompatible. In what way does it fail? Any useful messages?

I'm assuming you've got the 1.0.0-alpha2 release. The initial 1.0.0-alpha1 had a crash at startup (for everyone except me, apparently), but wasn't up for long.

One thing to check is whether you have a recent version of the .NET framework installed. There doesn't seem to be an easy way to figure that out, other than poking around in the system registry. If you grab a downloader from https://www.microsoft.com/net/download/dotnet-framework-runt ime you can see if that does anything.
Re: 6502bench SourceGen disassembler [message #374219 is a reply to message #374211] Sun, 30 September 2018 22:47 Go to previous messageGo to next message
Charlie is currently offline  Charlie
Messages: 255
Registered: November 2012
Karma: 0
Senior Member
On 9/30/2018 7:58 PM, frank_o_rama@hotmail.com wrote:
>
> Win 7 pro here. Couldn't get it to start up.
> f

Some programs generated in Visual Studio 2017 require either installing
Visual Studio 2017 on Windows 7 or installing a runtime component from
Microsoft.

https://www.microsoft.com/en-us/download/details.aspx?id=481 45

I don't know if this is true for C#/.net stuff but it's worth a try.

Charlie

>
>
> On Friday, September 28, 2018 at 10:56:11 AM UTC-7, fadden wrote:
>> - Does this work on Windows 7/8?
>>
Re: 6502bench SourceGen disassembler [message #374220 is a reply to message #374212] Sun, 30 September 2018 22:50 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: James Davis

On Sunday, September 30, 2018 at 5:22:30 PM UTC-7, fadden wrote:
> On Sunday, September 30, 2018 at 4:58:21 PM UTC-7, frank_...@hotmail.com wrote:
>> Win 7 pro here. Couldn't get it to start up.
>
> Hrm. I have a report of success on a Win7 system, so it's not fundamentally incompatible. In what way does it fail? Any useful messages?
>
> I'm assuming you've got the 1.0.0-alpha2 release. The initial 1.0.0-alpha1 had a crash at startup (for everyone except me, apparently), but wasn't up for long.
>
> One thing to check is whether you have a recent version of the .NET framework installed. There doesn't seem to be an easy way to figure that out, other than poking around in the system registry. If you grab a downloader from https://www.microsoft.com/net/download/dotnet-framework-runt ime you can see if that does anything.

Go to Control Panel / Windows Update / Installed Updates to check for your latest updates (sort by install date).
Re: 6502bench SourceGen disassembler [message #374223 is a reply to message #374219] Sun, 30 September 2018 23:17 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Sunday, September 30, 2018 at 7:47:25 PM UTC-7, Charlie wrote:
> Some programs generated in Visual Studio 2017 require either installing
> Visual Studio 2017 on Windows 7 or installing a runtime component from
> Microsoft.

The C++ redist stuff shouldn't be necessary; there's no native code. The .NET runtime should resolve all dependencies. OTOH, I just used the word "should" twice in two sentences, so who knows.

Looks like DeployMaster has a way to declare what version of the .NET runtime is required, and will complain if it's not present. I'll try to put an installer package together and see if that makes things any smoother. (It'd also provide a way to set up the file associations, so you could double-click on a .dis65 to open it.)
Re: 6502bench SourceGen disassembler [message #374226 is a reply to message #374223] Mon, 01 October 2018 00:10 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Sunday, September 30, 2018 at 8:17:24 PM UTC-7, fadden wrote:
> Looks like DeployMaster has a way to declare what version of the .NET runtime is required, and will complain if it's not present. I'll try to put an installer package together and see if that makes things any smoother. (It'd also provide a way to set up the file associations, so you could double-click on a .dis65 to open it.)


Urgh, will need to have it look for the runtime data somewhere other than where the executable lives. Need to sort that one out.
Re: 6502bench SourceGen disassembler [message #374237 is a reply to message #374223] Mon, 01 October 2018 09:55 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: frank_o_rama

I thought .net was already installed, but turns out it wasn't. The installer for the latest version fails for some reason.

The error message was something like "this program has an error and must close". The "more detail" button lists a problem with a certain .dll (not one of the ones included with the program).

Also tried it under WINE on macOS, which similarly did not work.

f


On Sunday, September 30, 2018 at 8:17:24 PM UTC-7, fadden wrote:
> On Sunday, September 30, 2018 at 7:47:25 PM UTC-7, Charlie wrote:
>> Some programs generated in Visual Studio 2017 require either installing
>> Visual Studio 2017 on Windows 7 or installing a runtime component from
>> Microsoft.
>
> The C++ redist stuff shouldn't be necessary; there's no native code. The .NET runtime should resolve all dependencies. OTOH, I just used the word "should" twice in two sentences, so who knows.
>
Re: 6502bench SourceGen disassembler [message #374239 is a reply to message #374237] Mon, 01 October 2018 11:44 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Monday, October 1, 2018 at 6:55:13 AM UTC-7, frank_...@hotmail.com wrote:
> I thought .net was already installed, but turns out it wasn't. The installer for the latest version fails for some reason.

It appears that recent .NET works with specific versions of Windows. For example, it doesn't work with base Win7, Win8, or base Win10, but does work with Win7 SP1, Win8.1, and Win10 with the "anniversary update" or later. (When I was playing with the DeployMaster installer, it made me remove a bunch of target platforms after I added the .NET dependency.)

I can't get the 4.7.2 installer to work on a Win7 virtual machine running on my Win10 system (VirtualBox); it fails near the end with a cryptic message about "the form specified for the subject". The 4.7.1 installer does work. Neither installer actually exits when complete, so you have to kill the zombie from the task manager. Launching SourceGen doesn't fail but doesn't actually do anything. I see the process in the task list, but it never shows any UI. The system is generally a little messed up -- it's cranky because I only have one Win7 license key and it's the one I upgraded to Win10 for the host system, so maybe it's being passive-aggressive? -- so I'm not sure what to make of it all. My crusty old test system is running WinXP, which is about impossible to install and upgrade anymore, so I don't want to trash that system. Microsoft isn't selling Win7 keys anymore, so I'm not going to set up another one.

It's almost as if Microsoft is encouraging everyone to get on Win10. Weird..

I'm hoping SourceGen will run natively under Mono on Linux and Mac OS X, avoiding Wine entirely, but I have no idea how plausible that scenario is.
Re: 6502bench SourceGen disassembler [message #374242 is a reply to message #374239] Mon, 01 October 2018 12:10 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Monday, October 1, 2018 at 8:44:56 AM UTC-7, fadden wrote:
> I'm hoping SourceGen will run natively under Mono on Linux and Mac OS X, avoiding Wine entirely, but I have no idea how plausible that scenario is.

Huh... it's entirely plausible. I installed Mono (https://www.mono-project..com/) on my Ubuntu Linux system and ran SourceGen.exe. It failed, but it failed with an error message from the app (can't find the RuntimeData directory), which means I might be able to fix it so it works.
Re: 6502bench SourceGen disassembler [message #374247 is a reply to message #374242] Mon, 01 October 2018 14:00 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Monday, October 1, 2018 at 9:10:20 AM UTC-7, fadden wrote:
> On Monday, October 1, 2018 at 8:44:56 AM UTC-7, fadden wrote:
>> I'm hoping SourceGen will run natively under Mono on Linux and Mac OS X, avoiding Wine entirely, but I have no idea how plausible that scenario is.
>
> Huh... it's entirely plausible.

Nope, it's still blowing up, deep in UI code. I'll circle back to this one of these days, but it's not going to run under Mono today.
Re: 6502bench SourceGen disassembler [message #374254 is a reply to message #374239] Mon, 01 October 2018 22:02 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: James Davis

On Monday, October 1, 2018 at 8:44:56 AM UTC-7, fadden wrote:
> On Monday, October 1, 2018 at 6:55:13 AM UTC-7, frank_...@hotmail.com wrote:
>> I thought .net was already installed, but turns out it wasn't. The installer for the latest version fails for some reason.
>
> It appears that recent .NET works with specific versions of Windows. For example, it doesn't work with base Win7, Win8, or base Win10, but does work with Win7 SP1, Win8.1, and Win10 with the "anniversary update" or later. (When I was playing with the DeployMaster installer, it made me remove a bunch of target platforms after I added the .NET dependency.)
>
> I can't get the 4.7.2 installer to work on a Win7 virtual machine running on my Win10 system (VirtualBox); it fails near the end with a cryptic message about "the form specified for the subject". The 4.7.1 installer does work. Neither installer actually exits when complete, so you have to kill the zombie from the task manager. Launching SourceGen doesn't fail but doesn't actually do anything. I see the process in the task list, but it never shows any UI. The system is generally a little messed up -- it's cranky because I only have one Win7 license key and it's the one I upgraded to Win10 for the host system, so maybe it's being passive-aggressive? -- so I'm not sure what to make of it all. My crusty old test system is running WinXP, which is about impossible to install and upgrade anymore, so I don't want to trash that system. Microsoft isn't selling Win7 keys anymore, so I'm not going to set up another one.
>
> It's almost as if Microsoft is encouraging everyone to get on Win10. Weird.
>
> I'm hoping SourceGen will run natively under Mono on Linux and Mac OS X, avoiding Wine entirely, but I have no idea how plausible that scenario is.

Do you read Wood on Windows? <https://www.computerworld.com/blog/woody-on-windows/>

Also check out Ask Woody to get your windows updates up to par.

< https://www.askwoody.com/forums/topic/2000003-ongoing-list-o f-group-b-monthly-updates-for-win7-and-8-1/>

Don't know if you are missing some critical update, but it seems like that is what you are saying. There was a critical update from a couple years back that if missing was messing up windows updates last month.
Re: 6502bench SourceGen disassembler [message #374255 is a reply to message #374247] Mon, 01 October 2018 23:22 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: frank_o_rama

I updated .net to version 4.6.2 from 4.6.1 and now it works. Had to use Windows Update rather than the downloaded installer, which did not work. Will have to dig in.

FYI: Did not need the Visual Studio C++ install thingy referenced by Charlie (still didn't work under 4.6.1--removed under 4.6.2 .net and it still works).

f
Re: 6502bench SourceGen disassembler [message #374256 is a reply to message #374255] Mon, 01 October 2018 23:32 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: fadden

On Monday, October 1, 2018 at 8:22:49 PM UTC-7, frank_...@hotmail.com wrote:
> I updated .net to version 4.6.2 from 4.6.1 and now it works. [...]
>
> FYI: Did not need the Visual Studio C++ install thingy referenced by Charlie

That's excellent news! I wish I understood why the framework installer is being so fussy, but so long as there's a path to making it run, I'm happy.
Re: 6502bench SourceGen disassembler [message #374542 is a reply to message #374247] Fri, 12 October 2018 14:12 Go to previous message
Anonymous
Karma:
Originally posted by: fadden

On Monday, October 1, 2018 at 11:00:25 AM UTC-7, fadden wrote:
>>> I'm hoping SourceGen will run natively under Mono on Linux and Mac OS X, avoiding Wine entirely, but I have no idea how plausible that scenario is.
>>
>> Huh... it's entirely plausible.
>
> Nope, it's still blowing up, deep in UI code. I'll circle back to this one of these days, but it's not going to run under Mono today.


As of the newly-posted 1.0.0-beta2, you can run it on Linux with Mono 5.16. Unfortunately you can't get very far, because after you open a project all the menus and dialog windows stop rendering. Looks like this: https://faddensoft.com/sgbug/

So I'm hopeful that it'll be usable with some workarounds, but it's not there yet.
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Odd Error QwiknEasy
Next Topic: Apple IIgs QuickDraw II 1-bit blit?
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Mar 29 03:56:32 EDT 2024

Total time taken to generate the page: 0.84278 seconds