Search found 56 matches

by mozz
Sat Apr 11, 2009 6:23 pm
Forum: Development
Topic: ZSNES GUI 3.0 the first screenshot
Replies: 78
Views: 83659

If you LIKE the design, then you can set it as your system default! You can make the whole OS use a bitmap font, colour it purple, make your mouse pointer bitmapped and yellow. For the DOS style menu boxes you may have to petition Microsoft. At any rate the OS is the right level to make these choic...
by mozz
Mon Mar 16, 2009 8:38 pm
Forum: bsnes Dev Talk
Topic: Snes controller progress:
Replies: 212
Views: 197664

Wow! That totally rules. That is my new desktop wallpaper! Thanks, fbx.
by mozz
Sun Mar 15, 2009 3:09 pm
Forum: Development
Topic: Gentlemen, I am unable to find the source code for windows
Replies: 21
Views: 10739

This thread is the best. You win ten internets!
by mozz
Tue Mar 10, 2009 12:42 am
Forum: Development
Topic: Progress on reducing HQ2x to fit in L1 cache
Replies: 95
Views: 70460

It sounds interesting, please if you have time to spare post your code or at least explain how did you get to shrink the table so much. Here is the compressed table I ended up with -- it worked out to 240 bytes. Slightly smaller ones are probably possible, but maybe not worth the effort. If you wan...
by mozz
Sat Mar 07, 2009 3:22 am
Forum: Development
Topic: 2-stage pipeline
Replies: 24
Views: 12636

I haven't written up any documentation on it, sadly. The basic idea is that there are bus cycles and work cycles. Bus cycles read from and write to memory; and work cycles do things like modify registers, set flags, etc. Basically, the SNES performs bus cycle N while performing work cycle N-1. The ...
by mozz
Sat Mar 07, 2009 3:07 am
Forum: Development
Topic: Progress on reducing HQ2x to fit in L1 cache
Replies: 95
Views: 70460

I also changed staments as: if (ExpandedDiff(pixels[5], pixels[3])) pattern |= DIFF53; To pattern |= (DIFF53* (ExpandedDiff(pixels[5], pixels[3]))); Where I thought it didn't cause any trouble. I did managed to spare some cycles with these edits. Making all of those things branchless is probably a ...
by mozz
Sun Feb 22, 2009 9:44 pm
Forum: bsnes Dev Talk
Topic: Snes controller progress:
Replies: 212
Views: 197664

Wow, that is a thing of beauty, FirebrandX.

I would love to make a 1280x1024 desktop wallpaper out of that. I'd probably put "EPIC WINNING LOL!" at the bottom in block white letters.
by mozz
Sun Feb 22, 2009 9:34 pm
Forum: Development
Topic: Progress on reducing HQ2x to fit in L1 cache
Replies: 95
Views: 70460

I know I'm a little late, but its nice to see this thread on the first page again! Edit: about this code from hq.cpp: newpattern = 0; if (pattern & DIFF26) newpattern |= DIFF51; if (pattern & DIFF56) newpattern |= DIFF54; if (pattern & DIFF86) newpattern |= DIFF57; if (pattern & DIFF...
by mozz
Sun Aug 17, 2008 8:53 pm
Forum: bsnes Dev Talk
Topic: bsnes vsync development thread
Replies: 133
Views: 60776

Regarding windows sleeping for much more than 1 ms... You may want to comb through this thread for some ideas: http://mollyrocket.com/forums/viewtopic.php?t=520&sid=17b7bc65dff9081e25409509818667c2 He was trying to divide CPU time between a main thread and a background thread, such that on a sin...
by mozz
Sun Aug 17, 2008 8:43 pm
Forum: bsnes Dev Talk
Topic: New HDMA emulation findings
Replies: 25
Views: 21567

What I did last time was store the H/V counters when the mul / div began, and each time either the result regs were read, or a full scanline had been emulated, I'd adjust the counters there. It was still somewhat noticeable, by ~2% or so. Same as I get with the same setup for my DMA counter. Those ...
by mozz
Sat Aug 16, 2008 6:51 pm
Forum: bsnes Dev Talk
Topic: New HDMA emulation findings
Replies: 25
Views: 21567

The major units left are the ALU (prevent reading mul/div registers early), auto joypad-polling ("prevent" reading $4016/$4017 controller port bits while the SNES is doing it in the background -- in truth, it just throws everything off), and NMI during IRQ edge cases. The first two will r...
by mozz
Fri Aug 15, 2008 9:41 pm
Forum: Development
Topic: Help out development immensely
Replies: 15
Views: 12870

Once again, I'd just like to say thank you, to byuu and others, for continuing to push for more accurate and complete info about the hardware of the SNES and (in this case) special chips. I think in the long run your efforts will be very helpful in having quality accurate emulators. (Already there a...
by mozz
Fri Apr 25, 2008 10:50 pm
Forum: bsnes Dev Talk
Topic: NMIB / IRQB timing (applies to NES as well)
Replies: 49
Views: 28240

The SNES is exactly the same as the NES. A two-stage pipeline is used. I tried to think of a way to emulate this, and really couldn't come up with anything sensible. The main thing to keep in mind is that the work cycle and bus cycle do different things, so it doesn't matter if they don't execute a...
by mozz
Fri Apr 25, 2008 2:31 pm
Forum: bsnes Dev Talk
Topic: NMIB / IRQB timing (applies to NES as well)
Replies: 49
Views: 28240

Final test complete. We nailed it! Awesome work. I look forward to reading your article about this. I find your thoroughness and uncompromising attention to detail on bsnes to be an inspirational example, and the fact that this has been solved would prove the merits of your approach even if bsnes h...
by mozz
Fri Feb 29, 2008 6:54 pm
Forum: Development
Topic: ZSNES GUI 3.0 the first screenshot
Replies: 78
Views: 83659

Anyone designing a new GUI for zsnes might want to watch this video:

http://www.mollyrocket.com/video/imgui.avi

I haven't tried it myself, but IMGUI looks a lot easier than GUI programming using stateful widget toolkits (which I have done lots of, and doing it always sucks).
by mozz
Tue Feb 19, 2008 5:09 pm
Forum: bsnes Dev Talk
Topic: bsnes2MESS
Replies: 31
Views: 22538

I'm really torn on this issue at the moment, and wavering back and forth on my opinion. On the one hand, I completely respect authors' wishes to not release their sources. On the other hand, it really annoys me that we still have these pissing contests in 2008. Hiding information so that one can be...
by mozz
Thu Jan 31, 2008 9:56 pm
Forum: Development
Topic: Multithreaded emulator state saving
Replies: 35
Views: 22212

henke37's solution is definitely possible, just non-trivial to implement. As he says, the debugger is able to take the program stopped at (almost) any point and find all the stack frames and locals in the function call chain, using compiler-generated meta-information. The addition is to then to mak...
by mozz
Wed Jan 30, 2008 9:12 pm
Forum: Development
Topic: Multithreaded emulator state saving
Replies: 35
Views: 22212

Would it be possible, then, that there would be certain conditions that would cause an infinite loop? As in, each time you advanced A or B or C to a safe point, it affected another processor, going round in a round in a never-ending circle? I don't think it can. Or rather, it doesn't matter because...
by mozz
Wed Jan 30, 2008 4:00 pm
Forum: Development
Topic: Multithreaded emulator state saving
Replies: 35
Views: 22212

Honest question: is it worth the complexity to have a savestate where all the processors are at "the same" simulated time? Why not just step them all to *some* reasonable stopping point (such as instruction boundary) and then save all state, INCLUDING the current simulated time of each pr...
by mozz
Wed Jan 30, 2008 3:51 pm
Forum: Development
Topic: Multithreaded emulator state saving
Replies: 35
Views: 22212

how large could this log get, do we log from rom load or just what went into the last frame? The log info would be pretty small (hopefully). You don't even need to log an entire frame---probably just a very small region necessary to get you from an instruction boundary, to the "precise save ti...
by mozz
Wed Jan 30, 2008 2:00 am
Forum: Development
Topic: Multithreaded emulator state saving
Replies: 35
Views: 22212

Okay, I've read through a lot of interesting stuff in the bsnes thread (yay!), including the handful of posts that spawned this one... non portable save states Forgive me, but I think it would be a terrible idea to implement save states which might then become un-loadable due to minor changes to the...
by mozz
Mon Jan 28, 2008 8:22 pm
Forum: Development
Topic: Multithreaded emulator state saving
Replies: 35
Views: 22212

Wow, I've been away from these boards for a long time... I tracked down the old thread where I proposed the "log replay" solution mentioned by blargg: http://nesdev.parodius.com/bbs/viewtopic.php?t=2174 Note one advantage of this is that it *doesn't* depend on how you implement the instruc...
by mozz
Sun Oct 15, 2006 1:54 am
Forum: Development
Topic: asm tools/IDE
Replies: 5
Views: 5493

In case anyone's interested, here's the assembly syntax hilighting scheme I use for NASM code in UltraEdit. Its not perfect (e.g. it thinks cmp [foo],bar is a store) but I find it pretty useful: /L8"ASM" Nocase Line Comment = ; Block Comment On Alt = lea Block Comment Off Alt = ] Escape Ch...
by mozz
Mon Sep 25, 2006 3:07 am
Forum: Development
Topic: Visual Studio 2005 Support
Replies: 10
Views: 10340

Nach wrote:Go out and shoot MSVC. We really don't care about MS stupidity. Yet we maintain MSVC compiling support, but we don't want to hear about the stupidity seriously.
Its been a long time since I tried to compile zsnes. Is GCC/mingw now the preferred way to compile it on Windows?
by mozz
Sat Sep 02, 2006 4:34 pm
Forum: Development
Topic: Another LUT->bit transformation request x.x
Replies: 15
Views: 11575

...I should add that if you encode speeds in a few bits of a lookup table you already have, then you have already paid for the cache miss. That might make it preferable to TRAC's method (I don't know). Another possibility is to borrow just one bit from your lookup table entries and use it to differe...