Search found 174 matches

by ReaperSMS
Sat Apr 10, 2010 11:05 am
Forum: NESdev
Topic: C/C++ NES programming
Replies: 26
Views: 17247

That's not so much treating everything as volatile, as not doing any CSE whatsoever.
by ReaperSMS
Tue Mar 30, 2010 10:16 pm
Forum: NESdev
Topic: "Licensing" Advice
Replies: 47
Views: 12561

The general use of (L)GPL code with commercial games hit one of these four categories: GPL engine/code, proprietary data. -- Essentially what the old idTech engines do now. Proprietary engine and data, dynamically linked with LGPL support libraries. This is what Loki did to release games on linux us...
by ReaperSMS
Tue Mar 30, 2010 3:49 pm
Forum: NESdev
Topic: "Licensing" Advice
Replies: 47
Views: 12561

Remember that the license has absolutely nothing to do with what you yourself can do with the code. That said, the usual sort that'd try to exploit something commercially without asking are also the sort that you probably don't have the time, resources, or ability to bring to task for it -- hong kon...
by ReaperSMS
Sat Mar 27, 2010 12:00 pm
Forum: SNESdev
Topic: make_sram for SNES PowerPak
Replies: 18
Views: 13539

You also have to check those locations + 512, as some copiers stuck a 512 byte header on the front. Theoretically the file extension would tell you about that, but they're generally unreliable.
by ReaperSMS
Thu Mar 25, 2010 11:43 am
Forum: NES Music
Topic: Pitch Slide and Arpeggio Combined
Replies: 11
Views: 5222

Yes. You store the current portamento offset, and add speed to it every frame (or every N frames, etc). A speed of 1, added every frame, will smoothly (or as smoothly as is possible) slide up one semitone in just over 4 seconds (256 steps between semitones, 1 step per frame, 60 Hz). If you want mult...
by ReaperSMS
Thu Mar 25, 2010 10:33 am
Forum: NES Music
Topic: Pitch Slide and Arpeggio Combined
Replies: 11
Views: 5222

In a bit more detail... With no pitch bending, notes are pretty easily specified as a number of semitones above some base. A number of games use the MIDI note range, which is 128 tones, ranging from C-1 to somewhere around C10. The usable range on the NES is a little smaller than that, ranging from ...
by ReaperSMS
Wed Mar 24, 2010 4:57 pm
Forum: NES Music
Topic: Pitch Slide and Arpeggio Combined
Replies: 11
Views: 5222

One way to do it is to treat your notes as 8.8 fixed point, whole choosing a semitone, fraction the distance to the next, and instead of a table, just doing the lerp math. Yeah, the multiply sucks donkey balls as far as cycles go, but it can be done without huge tables, and IIRC you can shortcut a b...
by ReaperSMS
Tue Mar 23, 2010 11:23 am
Forum: General Stuff
Topic: It Might Be NES
Replies: 17
Views: 7945

Software Configurable != Unlimited

Most VGA cards had software configurable DACs too, but at some point you run into the limits of the dot clock range or memory bandwidth avaliable
by ReaperSMS
Sat Mar 20, 2010 12:24 pm
Forum: NESdev
Topic: Ack - another tile data compressor
Replies: 45
Views: 12081

If you moved the y/ptr increment around a bit, you could avoid the need for the bit or the asl, as lda will set the N flag appropriately.
by ReaperSMS
Fri Mar 19, 2010 4:52 pm
Forum: NESdev
Topic: Ack - another tile data compressor
Replies: 45
Views: 12081

After looking at it, albeit briefly, a couple things come to mind: Column transposing is going to be rather slow, or need an excessively large LUT. It's probably better for the group header to have the bits stored chunky rather than planar, as it cuts down on the amount of RMW rotates needed. The co...
by ReaperSMS
Mon Mar 15, 2010 12:31 pm
Forum: NESemdev
Topic: VeriNES (FPGA-based NES) Updates
Replies: 13
Views: 11503

interfacing to an actual cart complicates the hell out of things, as most fpgas aren't 5V tolerant. It's a hell of a lot easier to keep everything in nice modern low voltage stuff.
by ReaperSMS
Wed Mar 10, 2010 2:57 pm
Forum: NESemdev
Topic: APU DMC ($4011 Direct Load vs. Delta-counter) Question
Replies: 13
Views: 5506

The serial bug is actually trivial to do with a real 6502. The DMC dma just pulls RDY down for 4 cycles, and does it's write on the 4th. The CPU ignores RDY for writes, for reads, it holds the address lines stable, and pauses internal operations (this'd be for adding wait states, for instance) If DM...
by ReaperSMS
Wed Mar 10, 2010 2:10 am
Forum: NESdev
Topic: Doing a better game engine - some thoughts on ice blocks
Replies: 32
Views: 9946

Coming from the old school PC gamedev side of things, free info is for whatever use someone can make of it. For ice, it's been done a number of ways. The usual NES approach has been something like what you described, where jumping could kill your forward momentum, landing while moving would keep you...
by ReaperSMS
Tue Mar 09, 2010 1:04 pm
Forum: NESemdev
Topic: APU DMC ($4011 Direct Load vs. Delta-counter) Question
Replies: 13
Views: 5506

Or it's just a synchronous up/down counter with an asynch load. I'd guess it's something like this: module dmc_counter(clk, ena, dir, load, d, q); input clk, ena, dir, load; input [7:0] d; output reg [7:0] q; always @(posedge clk) if (load) q <= d; else if (ena) else if (dir) q <= q + 1'b1; else q <...
by ReaperSMS
Fri Feb 26, 2010 2:04 pm
Forum: General Stuff
Topic: Pay for credit cards??
Replies: 12
Views: 3729

I believe the "cash discount" approach in the US tends to get retailers in trouble with Visa/MC as it's a violation of the merchant agreement.