Search found 441 matches

by Miquel
Thu Jul 11, 2019 6:40 pm
Forum: Video Display Processor
Topic: DMA Fill with autoinc 128
Replies: 3
Views: 109

Re: DMA Fill with autoinc 128

I believe you should set the auto-increment to 1 to write 2 consecutive bytes.

If my remembering works well, DmaFill operations works only with bytes, despite you should introduce this byte twice in the vpd (this is only for odd and even addresses).

In your case 2 DmaFill's will do the job.
by Miquel
Thu Jul 11, 2019 3:53 pm
Forum: Video Display Processor
Topic: DMA Fill with autoinc 128
Replies: 3
Views: 109

Re: DMA Fill with autoinc 128

See official documentation for an explanation; see SGDK code implementation for a solution. Fill basically works only with bytes when transferring, so both bytes of the map have to be the same; this will only work if you intend to use the very first tile as a substitute with all flags to 0 (everythi...
by Miquel
Fri Jun 28, 2019 11:11 am
Forum: Megadrive/Genesis
Topic: Designing a cooperative-threaded scheduler for an emulator
Replies: 14
Views: 1139

Re: Designing a cooperative-threaded scheduler for an emulator

I think this discussion lack clarifying objectives. Is it "cycle accuracy" what are you aiming for? Is it speed? Perhaps a mix of both? And then what is “cycle accuracy” really?, as its name says should be that at the end of every cycle the chip status is the same as emulator status, but I bet no em...
by Miquel
Wed Jun 26, 2019 1:54 pm
Forum: Megadrive/Genesis
Topic: Iridon Introduction
Replies: 13
Views: 2811

Re: Iridon Introduction

This is a pretty good answer for this last dilemma:

https://forums.nesdev.com/viewtopic.php ... 86#p239757

The only thing is MD/Genesis has a limited cpu and ram, compared with modern ones, so the solution has to be restricted to something smaller.
by Miquel
Sun Jun 16, 2019 2:22 am
Forum: Megadrive/Genesis
Topic: DETECTING RedKid2500-based consoles
Replies: 9
Views: 461

Re: DETECTING RedKid2500-based consoles

@FireRat, so you are obtaining a word/long from an odd address the seeing if the Address Error Exception fires? That's easy to detect on a emulator ("address & 1") and at least some emus check it (Reggen comes to mind). You still may be better off not trying to detect emulators but rather the partic...
by Miquel
Sun Jun 16, 2019 1:53 am
Forum: Megadrive/Genesis
Topic: Designing a cooperative-threaded scheduler for an emulator
Replies: 14
Views: 1139

Re: Designing a cooperative-threaded scheduler for an emulator

Ok, knowing that you are aiming for single thread and cycle accuracy my first approach would be: void emulator() { int commonCycles = 1; for(;;) { run( commonCycles ); // This doesn't work, but the idea is to adjust the time slice to // speed up/down depending on the cpu power we got if( plentyOfTim...
by Miquel
Thu Jun 13, 2019 12:49 am
Forum: Megadrive/Genesis
Topic: Designing a cooperative-threaded scheduler for an emulator
Replies: 14
Views: 1139

Re: Designing a cooperative-threaded scheduler for an emulator

Thanks for bring this subject up, it’s really interesting. My major point is I need more time to think about all this because bring a lot of knowledge altogether. But so far my developing thoughts are: General theory says you should make a difference between a thread and a workload: threads should b...
by Miquel
Wed Jun 05, 2019 3:28 pm
Forum: SGDK
Topic: Assembly inline C - example
Replies: 6
Views: 439

Re: Assembly inline C - example

In gcc you can write inline assembly or compose an assembly file, both ways works the same really. Inline assembly: + fully interlockable with C - more verbose - you NEED to know the use of the key words “__asm volatile” and “__asm” - you need to use implicit params (%), and how they work ("=>a", "=...
by Miquel
Mon May 27, 2019 11:26 pm
Forum: Demos
Topic: Metal Blast 2277 - Sega Genesis / Mega Drive
Replies: 48
Views: 10013

Re: Metal Blast 2277 - Sega Genesis / Mega Drive

Just a sudden inspiration: "When in doubt just ask the Chinese for news".
by Miquel
Fri May 17, 2019 9:13 pm
Forum: Demos
Topic: MD-NICCC - a 3D Mega Drive experience by TiTAN
Replies: 56
Views: 4653

Re: MD-NICCC - a 3D Mega Drive experience by TiTAN

I haven't check how the VPD works but judging by how the 68k does: VDP has to signal !BR (bus request) and wait for !BG (bus grand); the same when Z80 access main memory. Also !DTACK could be used to put the cpu in a wait state, the problem is the address bus is being used by the cpu while !DTACK is...
by Miquel
Wed May 15, 2019 12:25 pm
Forum: Demos
Topic: MD-NICCC - a 3D Mega Drive experience by TiTAN
Replies: 56
Views: 4653

Re: MD-NICCC - a 3D Mega Drive experience by TiTAN

That’s like ignoring the father of all signals, what you say is truly reality breaking.

I just booked it in my “to do” list to study and resolve once for all this affair.
by Miquel
Tue May 14, 2019 11:56 am
Forum: Demos
Topic: MD-NICCC - a 3D Mega Drive experience by TiTAN
Replies: 56
Views: 4653

Re: MD-NICCC - a 3D Mega Drive experience by TiTAN

Sik wrote:
Mon May 13, 2019 7:01 pm
1) VDP has a complete disregard for paying attention to signals for memory accesses
Are you saying DTACK signal (and his companion, I don't remember the name) is ignored ?

That's hard to believe.
by Miquel
Mon May 13, 2019 2:02 pm
Forum: Blabla
Topic: Strong Buzz for new Amstrad CPC game
Replies: 11
Views: 834

Re: Strong Buzz for new Amstrad CPC game

A static frame buffer on a game? I don't think is possible.
by Miquel
Mon May 13, 2019 12:41 pm
Forum: Demos
Topic: MD-NICCC - a 3D Mega Drive experience by TiTAN
Replies: 56
Views: 4653

Re: MD-NICCC - a 3D Mega Drive experience by TiTAN

No, the 7.67 Mhz 68000 is actually * slower * than the 2.68 Mhz 65C816 at accessing memory... However, the 65xx cannot transfer memory on every clock, so that's moot. Stef is correct, 65816 transfers 1 byte per 1 cycle, non-stop if needed, no problem. You have to remember that the 68000 takes multi...
by Miquel
Sat May 11, 2019 10:18 am
Forum: Demos
Topic: MD-NICCC - a 3D Mega Drive experience by TiTAN
Replies: 56
Views: 4653

Re: MD-NICCC - a 3D Mega Drive experience by TiTAN

Oh! There is no instruction prefech on the 65c816, now this makes sense. So this is really a read cycle of one cycle.