Search found 81 matches

by Natsumi
Wed Dec 21, 2016 12:03 pm
Forum: SGDK
Topic: about sprites
Replies: 16
Views: 2901

Re: about sprites

if you use 32x8 sprites, its enough to just fill the entire 320px. I tried to do a fancy sprite scroller, and it would need exactly 1 more sprite being displayed (so you can't see the edges), but VDP could not handle it, so I instead had to do hacks with planew+planea to display both FG and the scro...
by Natsumi
Sat Nov 12, 2016 5:42 pm
Forum: Megadrive/Genesis
Topic: Fastest way to clear memory
Replies: 8
Views: 1890

Re: Fastest way to clear memory

Having the clear a huge chunk of memory each frame is terrible design, and you need to redesign your system to not require that. Otherwise what you are doing is not feasible
by Natsumi
Fri Nov 04, 2016 2:01 am
Forum: Video Display Processor
Topic: DMA failure on different consoles.
Replies: 12
Views: 3134

Re: DMA failure on different consoles.

Now, this may be completely crazy suggestion, but try clearing the RAM after init but before any other DMA. Don't bother making it efficient, you just want to waste time. This fixed major issues with a homebrew I wrote earlier. Without this, the graphics wouldn't look right, or just nothing loaded. ...
by Natsumi
Tue Nov 01, 2016 2:46 pm
Forum: Video Display Processor
Topic: DMA failure on different consoles.
Replies: 12
Views: 3134

Re: DMA failure on different consoles.

Sanity check; disable ints. Always disable ints when writing to VDP unless you can be sure there is no possibility of ints happening (like during VInt with no HInts). Or better yet, write better DMA code. This one here is terribly slow, and increases likelihood of ints happening during it. The best ...
by Natsumi
Thu Oct 27, 2016 8:00 pm
Forum: Video Display Processor
Topic: VDP Tools ? (calc)
Replies: 4
Views: 2102

Re: VDP Tools ? (calc)

Yes it is a mess, but it is also very versatile. You can replicate any possible combination of instructions and modifiers to do anything you like. You could do that or.w #$4000,d0 with the macro too, and make it "easier to edit" :P
by Natsumi
Thu Oct 27, 2016 2:23 pm
Forum: Video Display Processor
Topic: VDP Tools ? (calc)
Replies: 4
Views: 2102

Re: VDP Tools ? (calc)

A lot of the time I use this bot called DocScratch (also ChaosGamma) on irc.badnik.zone that has a !vdp command, to convert from and to VDP commands. I also have the following macros for laziness' sake; vdpComm macro ins,addr,type,rwd,end,end2 if narg=5 \ins #(((\type&\rwd)&3)<<30)|(((\addr)&$3FFF)<...
by Natsumi
Wed Oct 26, 2016 9:02 pm
Forum: Demos
Topic: Totino Challenge
Replies: 1
Views: 1131

Totino Challenge

So, since the topic for RAGE this year was Totinos , I present to you Totino Challenge! A quick homebrew I wrote in 24 hours for the contest. Even with the bad topic, I decided to take it on for the challenge. I think it turned out very well for the little time I had to write it in. In fact, I have ...
by Natsumi
Fri Sep 09, 2016 8:06 pm
Forum: Megadrive/Genesis
Topic: How to build a self-running demo?
Replies: 11
Views: 2428

Re: How to build a self-running demo?

Sik; You could also emulate pressed/held states on demo code you know
by Natsumi
Thu Sep 08, 2016 11:19 am
Forum: Megadrive/Genesis
Topic: How to build a self-running demo?
Replies: 11
Views: 2428

Re: How to build a self-running demo?

To be more specific, Sonic 1 has duplicate vaöues for button presses; one for players (Sonic), and one for controller (Ctrl 1). During demo, instead of reading input from ctrl 1 for Sonic, it reads from ROM. Start button is checked from ctrl 1 so it will still work (and by extension a demo cannot en...
by Natsumi
Wed Sep 07, 2016 5:48 am
Forum: Megadrive/Genesis
Topic: How to build a self-running demo?
Replies: 11
Views: 2428

Re: How to build a self-running demo?

oftentimes games would just override the controller input with data from a file. Games need to be programmed with this in mind, however, so the game correctly responds to held/pressed states and keeps in sync! The way Sonic 1 is precisely this, and the buttons are (thought to) be recorded via unused...
by Natsumi
Tue Aug 30, 2016 6:11 am
Forum: Video Display Processor
Topic: VDP access from Z80 questions
Replies: 16
Views: 4541

Re: VDP access from Z80 questions

Ive never had timing issues on v-int. Even with a lot of DMA's happening durint it, h-ints start at line 0. You should invest in fast and clean code durint v-int either way, or it could take a lot of unnecessary CPU time
by Natsumi
Sun Aug 28, 2016 5:23 pm
Forum: Video Display Processor
Topic: VDP access from Z80 questions
Replies: 16
Views: 4541

Re: VDP access from Z80 questions

Whenever I do anything on h-int each line, I load the code in RAM, then do this: move.l #vdpcommand,$C00004 HintAddr = *+2 move.w addr.w,$C00000 addq.w #2,HintAddr.w rte This is a very quick way to issue VDP commands and write to VRAM, CRAM, and VSRAM. As a bonus it uses no registers and uses only 2...
by Natsumi
Fri Aug 12, 2016 9:31 am
Forum: Megadrive/Genesis
Topic: Mega Everdrive USB programming
Replies: 6
Views: 2159

Re: Mega Everdrive USB programming

Ive done a server/client test sometime back. Although its hacky I can share some of the code if you wish. Server is written in C# and client in ASM. I used this to test streaming music files, but the connection is too slow or unreliable to work properly.
by Natsumi
Fri Aug 12, 2016 9:29 am
Forum: Announcement
Topic: Idea to help slow down spammers
Replies: 8
Views: 3540

Re: Idea to help slow down spammers

You probably could just use S3K's maze generation algorithm to figure out this problem. The good side is that just any non-Sonic geek or someone who doesnt understand 68000 wouldnt be able to so easily get this thing working.
by Natsumi
Tue Jul 19, 2016 9:09 am
Forum: Megadrive/Genesis
Topic: Decoding UTF-8
Replies: 1
Views: 980

Re: Decoding UTF-8

it indeed is hilarious how difficult it is to deal with Unicode in C++ for example; I had to do some serious black magic to read UTF-8 file into a wchar_t*, but its doable. I was quite irfitated how I just couldn't whip out 68k and write that code myself in few minutes, as opposed to hunting for it ...