It is currently Tue Dec 12, 2017 6:49 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: ROB homebrew
PostPosted: Sat Jul 19, 2014 3:53 pm 
Offline

Joined: Tue May 28, 2013 5:49 am
Posts: 921
Location: Sweden
I couldn't find any info about R.O.B. on the wiki and the only homebrew I've found that uses ROB is this Atari homebrew here http://atariage.com/forums/topic/190214 ... try2406378.

UglyJoe at Famicom World managed to make a working ROB controlling program in Family Basic, and shared it here: http://www.famicomworld.com/forum/index ... pic=9691.0.
I used his ROB controlling routine to make a simple test program homebrew (download in attachment). I tested it on my Everdrive and with my Famicom Robot and all ROB commands works, but there are still at least three problems:

1) When flashing a command to ROB it doesn't work 100% of the time, sometimes I have to make the screen flash more than once to make ROB move. That's strange because it seemed to work 100% of the time in Family Basic.

2) There's something wrong with my Famicom external controller reading, because UP and DOWN on my external controller (a Capcom Power Stick Fighter) moves the cursor several tiles up and down instead of just one (it works in other games, my own pong game and even in the Everdrive menu). That's strange because that code is almost the same as in my pong game. SELECT button works as it should though, and "controller 3" in Nestopia has no problems. Maybe the CPS-Fighter doesn't like the logging of old button states for some reason. Solved by using another controller reading routine.

3) There seems to be some garbage on the screen after flashing a command. I didn't notice this in the emulator but when testing on my everdrive it was noticable. Family Basic didn't have any such garbage (tested on real hardware).

I reused lots of code from my pong game so it has tons of comments (it's kind of my notebook) there, but only the "main.asm" and "sub.asm" files are really relevant. I'm using constant values for some of the PPU values that needs to be restored after flashing the screen (the PPUMASK value for instance), so I guess you might need to change the code to back up the old values before flashing (like Family Basic does), if you are using this routine in your own project.

Finally I'm sure my program has tons of other flaws, so don't hesitate to point them out.


Attachments:
Robtest.zip [42.57 KiB]
Downloaded 118 times


Last edited by Pokun on Sat May 02, 2015 3:26 am, edited 4 times in total.
Top
 Profile  
 
 Post subject: Re: ROB homebrew
PostPosted: Sat Jul 19, 2014 7:32 pm 
Offline
Formerly WhatULive4
User avatar

Joined: Fri Oct 30, 2009 4:43 am
Posts: 339
I know that Bunnyboy has made a test rom, but I don't think it was posted anywhere. http://youtu.be/wRYA2DsuFtk


Top
 Profile  
 
 Post subject: Re: ROB homebrew
PostPosted: Sun Jul 20, 2014 2:55 am 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5892
Location: Canada
On a related note, is there any emulator with a R.O.B. simulation? Maybe some kind of graphical display of the robot and it's expected states of motion?


Top
 Profile  
 
 Post subject: Re: ROB homebrew
PostPosted: Mon Jul 21, 2014 5:30 am 
Offline

Joined: Tue May 28, 2013 5:49 am
Posts: 921
Location: Sweden
I don't think so, not that I know of.

NESHomebrew wrote:
I know that Bunnyboy has made a test rom, but I don't think it was posted anywhere. http://youtu.be/wRYA2DsuFtk
Thank you, at least his seems to work 100% of the time.


I noticed that the wiki has a proper controller reading code, so I changed the one I used for that one. It doesn't help my external controller though.


Top
 Profile  
 
 Post subject: Re: ROB homebrew
PostPosted: Fri Jul 25, 2014 3:26 pm 
Offline

Joined: Tue May 28, 2013 5:49 am
Posts: 921
Location: Sweden
OK the second problem is now solved. I noticed that Tepple's controller reading routine here viewtopic.php?f=22&t=7991 worked with my external controller so I updated the ROB program to use that one instead. Incidentally it now also has anti DMC OAM bug countermeasures as a result.

Also I suppose the reason why ROB doesn't respond 100% of the time could simply be because my menu handling is too crappy. Sometimes it just fires off the first option (TEST) which does nothing at all if ROB's LED is already lit. I can't test it though, because my ROB is back in his box.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group