Search found 237 matches
- Mon Sep 12, 2016 7:00 pm
- Forum: Megadrive/Genesis
- Topic: Line scroll & VDP mode regs
- Replies: 4
- Views: 3935
Re: Line scroll & VDP mode regs
I ended up splitting my line scroll buffer in RAM into two contiguous buffers for each plane which are then interleaved into VRAM through a couple of offset DMAs. Speed isn't a problem so far because my game logic isn't that complex yet, but I like the idea of using the full plane scroll in hblank t...
- Mon Sep 12, 2016 4:29 pm
- Forum: Megadrive/Genesis
- Topic: Line scroll & VDP mode regs
- Replies: 4
- Views: 3935
Line scroll & VDP mode regs
If I'm doing a split scroll background with line scroll, do I absolutely have to fill out the entire horizontal scroll RAM per line? It seems pretty wasteful to have to fill it out for every single line when most of the values are duplicated. Especially when I have 2 or 3 "row" splits (VDP's in line...
Re: It seemed
I own the "Mario" version. It's a good multicart & I got a chuckle out of the name too, wonder if they were... inspired by this site?
- Thu Jul 14, 2016 2:49 am
- Forum: Megadrive/Genesis
- Topic: Infinite scrolling maps/scroll plane "edge" DMA
- Replies: 15
- Views: 10081
Re: Infinite scrolling maps/scroll plane "edge" DMA
A good easy to implement fast RLE is the "mac packbits" format https://en.wikipedia.org/wiki/PackBits C packer source is available at https://pineight.com/nes/ under "pin eight NES tools" Here's an unpacker, in C (this would be real easy to write in 68k though), that I have been using for nametables...
- Fri Jun 17, 2016 2:30 am
- Forum: Megadrive/Genesis
- Topic: Infinite scrolling maps/scroll plane "edge" DMA
- Replies: 15
- Views: 10081
Re: Infinite scrolling maps/scroll plane "edge" DMA
Oh by the way Dragon's Castle is excellent and definitely an inspiration for me to keep going. I'm very impressed it's in 68k, I am terrible at writing logic type stuff in assembly.Sik wrote:Dragon's Castle
- Fri Jun 17, 2016 2:26 am
- Forum: Megadrive/Genesis
- Topic: Infinite scrolling maps/scroll plane "edge" DMA
- Replies: 15
- Views: 10081
Re: Infinite scrolling maps/scroll plane "edge" DMA
Well, for Dragon's Castle I'm using Tiled, though you need to use some specific settings to have it work (more specifically, I have a converter script that takes the TMX file and turns it into the game's format, and it does so in a rather lame and lazy way). Still probably good enough to work I sup...
- Thu Jun 16, 2016 9:24 pm
- Forum: Megadrive/Genesis
- Topic: Infinite scrolling maps/scroll plane "edge" DMA
- Replies: 15
- Views: 10081
Re: Infinite scrolling maps/scroll plane "edge" DMA
By the way, if your tilemap is 64 tiles wide (i.e. 64×32 or 64×64) then you can set autoincrement to $80 to draw tiles vertically, so you can load a whole column with a single transfer. Good to know this will work the way I thought it would! EDIT: also you don't store the nametable as-is, that's ri...
- Thu Jun 16, 2016 6:57 pm
- Forum: Megadrive/Genesis
- Topic: Infinite scrolling maps/scroll plane "edge" DMA
- Replies: 15
- Views: 10081
Infinite scrolling maps/scroll plane "edge" DMA
I want to 8-way "infinite" scroll a plane, presumably by reloading the plane's nametable at just past the edge of the visible screen. What's the generally accepted way to accomplish this? Assume I have two functions, both that do a DMA to copy either a 40 tile wide "row" or a 32 tile high "column." ...
- Sat May 28, 2016 12:11 am
- Forum: Hardware
- Topic: Hmmmm.......?
- Replies: 25
- Views: 27168
Re: Hmmmm.......?
This is sexy, I want one.
- Tue Apr 26, 2016 8:14 pm
- Forum: Megadrive/Genesis
- Topic: Alright dudes, I need your help! (soft-reset bug)
- Replies: 37
- Views: 21323
Re: Alright dudes, I need your help! (soft-reset bug)
Looking at the vasm manual, it looks like optimizing move #0, <ea> to clr <ea> is only enabled default if you tell it that you're targeting something newer than a 68000. Are you passing -m68000 to vasm? Yeah, -m68000 is getting passed to vasm and -cpu=68000 is getting passed to vbcc. Also tried -no...
- Tue Apr 26, 2016 6:35 pm
- Forum: Megadrive/Genesis
- Topic: Alright dudes, I need your help! (soft-reset bug)
- Replies: 37
- Views: 21323
Re: Alright dudes, I need your help! (soft-reset bug)
Plus using a modern GCC to build Genesis stuff felt not unlike using a shotgun to swat a fly, you know? Is it? I know Sega used GCC for the Saturn, I wouldn't be surprised if GCC was also an option with the Mega Drive. Really the only difference is that you'd be using a newer version of the tool in...
- Tue Apr 26, 2016 6:01 pm
- Forum: Megadrive/Genesis
- Topic: Alright dudes, I need your help! (soft-reset bug)
- Replies: 37
- Views: 21323
Re: Alright dudes, I need your help! (soft-reset bug)
This is beginning to drive me a little crazy. The source emitted by the compiler contains move.l #0,(a1), manually assembling that with -no-opt generates a listing file that also contains move.l #0,(a1), but something about the process of compile->assemble-> link it is getting "optimized." No comman...
- Tue Apr 26, 2016 5:56 pm
- Forum: Megadrive/Genesis
- Topic: Alright dudes, I need your help! (soft-reset bug)
- Replies: 37
- Views: 21323
Re: Alright dudes, I need your help! (soft-reset bug)
I saw this in that Gargoyles source dump and thought it was kind of strange but I guess it makes senser57shell wrote:btw joypad & dma should be in same gemsdmastart() gemsdmaend() block.
You don't need to stop z80 for joypad. All you need is guarantee no access to m68k bus. That is done by this funcs.
- Tue Apr 26, 2016 5:38 pm
- Forum: Megadrive/Genesis
- Topic: Alright dudes, I need your help! (soft-reset bug)
- Replies: 37
- Views: 21323
Re: Alright dudes, I need your help! (soft-reset bug)
No matter WHAT I tell the assembler to do it insists on generating clr.l (a1). This is what I meant by bad documentation, there's probably something I'm not doing right.
- Tue Apr 26, 2016 5:26 pm
- Forum: Megadrive/Genesis
- Topic: Alright dudes, I need your help! (soft-reset bug)
- Replies: 37
- Views: 21323
Re: Alright dudes, I need your help! (soft-reset bug)
Unfortunately, compilers are not always compliant (especially ones for architectures that have fallen out of favor). Ironically, this is one of the main reasons I went with vbcc in the first place. It's still actively getting worked on, even if it is a little rough around the edges, and 68k is pret...