Search found 284 matches

by Charles MacDonald
Thu Aug 06, 2015 4:34 am
Forum: Hardware
Topic: FPGA version
Replies: 22
Views: 5422

Re: FPGA version

While they all claim their versions aren't finished, i'll like to know if a FPGA (or a SoC) version of Genny is possible ? The SoC versions are just emulation running on an embedded platform, so it can be as good as the emulation they use (or steal :)) A FPGA version that is close to perfect is def...
by Charles MacDonald
Tue Jul 28, 2015 1:14 am
Forum: Megadrive/Genesis
Topic: DMA from ROM to CRAM, results are garbage
Replies: 15
Views: 2741

Re: DMA from ROM to CRAM, results are garbage

The source data in ROM can't cross a 128K boundary too, so maybe confirm the data is within a 128K block.

E.g. if the palette data starts at $05FFF0, the DMA will wrap to $040000 past $05FFFF instead of continuing from $060000 like you think it should.
by Charles MacDonald
Thu May 07, 2015 5:45 pm
Forum: Controls
Topic: Saturn = Genny ?
Replies: 3
Views: 1943

Re: Saturn = Genny ?

Yep, they are the same. Other than the connectors being physically different, the Saturn and Genesis controller ports are electrically identical. The polling is more involved for some of the Saturn peripherals, but it's no worse than accessing the Mega Mouse I suppose. With the right adapter you cou...
by Charles MacDonald
Sun Apr 26, 2015 4:03 am
Forum: Blabla
Topic: best emulator on android?
Replies: 7
Views: 2416

Ah yeah, of course i was using the free version... did not know it was based on Genesis Plus GX, i know it was also using some part of Gens code for the Sega CD emulation. I have the feeling he asked for permission to use parts of Gens Sega CD emulation as a cover for continuing to misuse Genesis P...
by Charles MacDonald
Sat Mar 28, 2015 12:52 am
Forum: Hardware
Topic: MOVEM quirk
Replies: 2
Views: 2689

Stef wrote:Interesting, does the extra cycle happen also with (An) indexing ?, i guess so ! That also explains why MOVEM.w Mem-->Reg is 12+4n cycles
when MOVEM.w Reg --> Mem is 8+4n cycles.
That's right, it happened when the source was (An), (An+), ($nnnn).w, etc. I tried all of the ones I could think of.
by Charles MacDonald
Thu Mar 26, 2015 6:09 pm
Forum: Hardware
Topic: MOVEM quirk
Replies: 2
Views: 2689

MOVEM quirk

I ran into an interesting problem when debugging software on a 68K SBC. When doing a memory-to-register transfer using MOVEM of any size (word,long) with any EA mode, it will read one extra address past the last legitimate location. This read is word sized even if transferring words or longwords. Fo...
by Charles MacDonald
Sat Mar 14, 2015 5:54 pm
Forum: Hardware
Topic: Model 1 MD PCB hacks topic
Replies: 17
Views: 6802

All the Genesis consoles I've seen have a few wires going to the two work RAM chips. Any reason why that is? It seems intentional because even as the motherboards revisions change those wires remain. It doesn't seem to be a routing issue that required a few flying leads to fix. Given that the wires ...
by Charles MacDonald
Thu Mar 12, 2015 2:03 am
Forum: Megadrive/Genesis
Topic: Help with compilation on Linux
Replies: 3
Views: 1217

Re: Help with compilation on Linux

You need to specify a linker script (e.g. -T mylinkerscript.ld). You can use the one included with SGDK called "md.ld". This will resolve the missing symbol "_start".

https://code.google.com/p/sgdk/
by Charles MacDonald
Wed Jan 28, 2015 8:38 pm
Forum: SGDK
Topic: Use of CLR in generated code
Replies: 8
Views: 2152

Stef wrote:To avoid CLR instruction use by GCC i use an infamous trick in SGDK.
Ha, that's brilliant. I'll definitely use it.
by Charles MacDonald
Tue Jan 27, 2015 4:40 am
Forum: SGDK
Topic: Use of CLR in generated code
Replies: 8
Views: 2152

Chilly Willy wrote:You pass GAS the flags "-m68000 --register-prefix-optional". It still works on the very latest binutils.
Wonderful, that did the trick. Thanks!
by Charles MacDonald
Tue Jan 27, 2015 3:12 am
Forum: SGDK
Topic: Use of CLR in generated code
Replies: 8
Views: 2152

Use of CLR in generated code

I've noticed when assigning a volatile memory location to zero, gcc will emit a CLR instruction. Is there any way to force it to write a constant zero instead of using a read-modify-write instruction such as CLR? Also I recall there was some way to suppress the requirement of a percent sign on regis...
by Charles MacDonald
Sat Jan 03, 2015 10:29 pm
Forum: Video Display Processor
Topic: VDP Internals
Replies: 56
Views: 21706

PSG is inside the VDP In fact $7F00-$7F1F on the Z80 side maps to $C00000-$C0001F on the 68K side, though it's not possible for the Z80 to control the data or control port in a meaningful way because of the bus size mismatch of 8-bit vs 16-bit. Only in Mark III compatibility mode (/M3 pin grounded)...
by Charles MacDonald
Tue Dec 30, 2014 12:13 am
Forum: Megadrive/Genesis
Topic: Undefined behavior for ABCD and SBCD
Replies: 36
Views: 8738

I suppose the fact that no one gets this right despite it being documented for at least 13 years goes to show how little this matters for practical purposes. I suppose it may come up in Atari ST or Amiga productivity software which probably give these instructions more of a workout than Genesis gam...
by Charles MacDonald
Mon Dec 29, 2014 10:28 pm
Forum: Megadrive/Genesis
Topic: Undefined behavior for ABCD and SBCD
Replies: 36
Views: 8738

Bart had done some testing on this a few years ago, not sure if it's applicable to other 68Ks in the family or just the plain 68000:

http://emu-docs.org/CPU%2068k/68knotes.txt
by Charles MacDonald
Wed Dec 03, 2014 4:34 pm
Forum: Megadrive/Genesis
Topic: Random questions about games I study
Replies: 11
Views: 2404

Yes, of course! I had a different very specific goal in mind :) There are many things I wonder if they are possible using HBLANK. For example, is it possible to draw more sprites than what is theoretically possible (80) by changing the y values during HBLANK ? You can, and games like Castlevania Bl...