rubengar wrote:
Hi friends my character´s jump is very ugly!! I need your help to improve. Please you see my code and help me to improve jumping, I don´t mind the animation, only improve movement. I used 3 days and not improving jump, I leave my code! thanks for your time!!:-)
Hi, rubengar,
I haven’t looked at your code (or played your demo, actually…) but I’ve explained a system for jumping using simulated gravity in some detail in this post. Then I wrote an (untested) implementation and posted it here (BTW, the search function is your friend ;-)).
I hope this helps; this seems like it could end up being a very fun game!
EDIT: I just played it and looked at the code. I can see one major problem with your jumping (he immediately “teleports” to the top of the jump) and a small graphical glitch in the walk-cycle (some pixels from the next frame show up in one of the right-facing images) but it definitely looks good so far. Just try implementing the code I posted above. It can probably be copied/pasted, for the most part.
Doesn’t this make Fwirt eligible for a Coder badge?
Which doc did you read that “aspect ratio” comment in? The column table is used to compensate for the non-linear nature of the mirrors’ vibration. If you turn on the pixel (LED) array the same amount of time at the edges of the screen cycle as you do in the middle, the outer ones would be really wide, and the inner ones would be skinny. The column table evens them out so that all pixels are the same size/shape.
Also, it’s 512 words per screen. Each 16-bit word is made of an 8-bit column length and an 8-bit repeat value. The reason given for the number of entries is to compensate for hardware tolerances and “minor impacts” (although why anyone is subjecting their VB to impacts of any kind while playing, I have no idea).
It’s not really something a programmer needs to worry about. There aren’t really any useful “advanced effects” that can be done with it, so it’s best just to leave it alone.
DogP wrote:
AFAIK there was no MIDI port on the debugger… do you have a link where that’s referred to?DogP
No, but I may be thinking of the SNES debugger(s)…
DogP wrote:
Well, I assume the VB isn’t just a consumer, since he said better in-game music… which means that the VB would have to request music to be played. And yeah… if you want to modify a cartridge, you have a lot of options, like adding a UART to the cart bus, as well as mixing the raw audio into the audio stream right on the cart.DogP
Well, if blitter wants the VB to generate MIDI messages to control a synthesizer, it would only be a producer and the controller port wouldn’t be useful at all…
I was under the impression that he wanted to compose VB music with MIDI instruments/software while hearing what it actually sounds like on the VB in real-time. The songs thus made would then play fine on a stock VB with no hardware enhancements. I think there was a MIDI port on the debugger unit for this very purpose, although it may have been output-only (to check the output of the VPU?) or bi-directional.
However, a synthesizer on the cart controlled by MIDI(-like) messages and mixed in with the audio would totally rock (to use a bit of a pun ;-))!
If your goal is to simply use the VB as a synth to compose music, it may be easier to make a soft-synth out of the VSU emulation code from RBoy or Mednafen. It wouldn’t be 100% accurate, but probably close enough to get songs made, which could then be tweaked by testing on hardware. Maybe Linus Akesson, the maker of the “Chipophone,” would like to help 😉
Otherwise, I agree with DogP, but would add that A) since (AFAIK) the VB really only has to be a consumer of messages, the controller input is another viable choice (although it’s still synchronous and very different from RS232/MIDI) and B) you could also implement a UART on the cartridge bus.
KR155E wrote:
Beautiful!
Seconded! 😉
Vaughanabe13 wrote:
More good news, I have a BOM (Bill of Materials) worked up […]
Cool. Will you be posting that on the blog? You don’t have to list your supplier(s), or even give prices, but I’d like to see the parts list.
Also, that total does NOT include the cost of a Micro SD card, which usually runs about $10 USD for a 1GB card.
I found a couple of 2GB cards for under $9 on walmart.com
Sure, they’re “Dane-elec” and “Sony” brands (read: the cheapest, no-name, hastily-made ones they could find with “Sony” printed on them), but still probably serviceable…
Also, this is for a cart with 16M of SRAM and 256K of Save SRAM. There will be an upgrade option if you want 32M of program space, probably for about $20 more.
16M (I assume bits) should be enough for the foreseeable future, but that’s quite a price gap…
That is a mystery!
Wario Land, maybe? The title screen has Wario in his airplane… Otherwise, I’m going to have to go with Vaughan’s Waterworld theory.
Vaughanabe13 wrote:
As far as the PCB ordering goes, I have a meet-you-in-the-middle solution for that. Instead of letting you guys do all the PCB ordering yourselves, I would just put it up for sale through a third-party site like BatchPCB. Those guys let you submit a design and then let other people buy your board directly from them. So all you would have to do as a customer is just place an order for one of my boards and they’ll send it to you. That’s much easier than having to take the source files and send them to a fab house.
I forgot about that… that’s a pretty good idea, although, wouldn’t the price-per-board be lower if you just bought a big batch and sold them off piecemeal? I assume you’re going to take pre-orders, so you wouldn’t have a bunch left over…
Also, this board is nearly ALL surface mount parts (with a few exceptions), so those of you who don’t have access to good soldering stations or know how to solder surface mount parts successfully might have trouble. TSOP48 and TQFP64 aren’t the hardest packages to solder ever, but they definitely require a lot more effort than through-hole, and the cost of the parts is quite a lot, so mistakes are costly.
Another good point… I’ve soldered the odd passive (caps, resistors) and a couple of PLCC sockets (poorly :-P). I don’t think I would have any trouble with this, but some might (although why those people would buy the kit, I couldn’t say :-P) Actually, it looks like a fun challenge to solder by hand (or a good reason to finally make a toaster-oven reflow setup 8-))
…I will need to program the micros in-circuit before sending them out. […] I don’t have an industrial programmer I can use to program TQFP micros so I can’t sell pre-programmed micros.
Maybe you could “MacGuyver” up a simple socket using straight-pins and ball-point-pen springs? 😉
If I didn’t assemble the micro circuit and program it, the kit idea is almost just as DIY as the non-kit idea, because you would have to be able to program the microcontroller yourself.
Yes, but my point about not having to find (and have shipped) single/small quantities of (as you’ve admitted) hard-to-find chips is still valid…
I can’t wait to see the parts list. My best guess for the uC is AVR, but there are a lot of other makes it could be.
I’m most interested in the SRAM and level converters, because I’ve had a similar SRAM-based design in my head for years, although mine was/is going to use a standard flash/EPROM/OTP to boot, then use a “Game Genie” type mechanism to swap the SRAMs in after the VB’s running. The programming would be done over the link port or custom hardware in the cart (maybe even Ethernet).
I fully support all of those options, (they’re not really mutually exclusive) plus I recommend a fourth:
Sell a board and a set of parts as a kit so that the “not quite DogP level” DIY’ers 😉 can assemble their own without having to source the parts and etch/order a PCB.
Also, that board is a work of art! Brilliant job (once you get the connector part squared away, that is ;-))
+1 to making the hardware open.
+1 to including some profit in the price (so you have more starter cash for other projects ;-))
Also, great job on the manual routing! That was 1000x faster than I could have done it (at least!) :-D. I think too much automation can be a bad thing. It’s good for people to practice doing stuff the “old fashioned way” 😉 Although, if I could afford it, I’d probably use that fancy auto-router 😛 The AR in Eagle, even as limited as the free version is, is a big help.
It’s too bad there isn’t a way to check the “health” of your laser. You could actually prove one way or the other by doing regular “check-ups”.
I’m inclined to believe DogP’s “cheap CD-Rs” theory, though, since some people turn up the laser power manually to use CD-RWs (which reflect less light or scatter it more or have lower contrast or whatever).
gunpeiyokoifan wrote:
[…] I have one coming in the mail, does anyone have any game suggestions on what to get for it?
Depends on what kinds of games you like. The only game I played through on it was Rayman 2, which is also available on N64, PS1, PC, etc.
MDK2 is an interesting 3D platformer/shooter.
There’s a whole bunch I could tell you not to play, but I’m a bit picky when it comes to games, so you’re better-off just ignoring me 😛
Mostly, I would just borrow all your friend’s games and buy the one(s) you like 😉
also, said Dreamcastic friend drew me a VB yesterday… I’m guessing you fellow VB freaks might like to see it?
Sure, why not…
(unbelievably, she draws the VB better than I can […])
Post both pics and let us verify that theory 😉
last silly note: she thinks once I play the Dreamcast the VB will have no chance against it being my favorite console 😛
Bzzzt, wrong! It’s an okay system, but it’s no VB-killer by a long shot. Although, it might inch a bit closer if I ever get time to add a VGA-out to mine and hook up my shutter glasses (but I’d still need to write software for it…). (Anyone have a VGA-out box they’re not using? ;-))
PS: I don’t think you should refer to your friend as “dreamcastic”… It’s used as a derogatory term referring to the graphics on the DC.
EDIT:
How did I forget about Rez?! It’s my favorite game for the system! Definitely try that one.
* Makes mental note to hook up the DC *
EDIT2:
Sorry for slacking, boss… There’s a dev compo in progress, you know 😀
Vaughanabe13 wrote:
I’m using version 2.95.2 because that’s what you guys told me to use. Where is Dasi’s version then?
If it’s not the latest one available from http://gccvb.planetvb.com/ I don’t know where to find it. I just remember trying to compile 2.95 from source using cygwin (which then was using GCC 3.4, or something, I think) and it didn’t work, and I got a pre-compiled version somewhere (directly from dasi?) that I just had to extract to my C:\cygwin\usr folder.
Try leaving off the entire “-T” switch from the gcc command.
My ld.exe (aka v810-ld.exe) has a CRC32 of 22d5469c.
(v810-)gcc.exe’s is ce056a7b.
(If you don’t have a crc/hash generator, I suggest: http://beeblebrox.org/hashtab/)
I just realized I don’t have one, either. I’m using (and suggest you use) dasi’s build of the 2.95 version. I think it has the linker script built-in.
Besides this new issue, there’s also some problem with (one of?) the newer versions generating inefficient function calling code. BTW, what version are you using? (v810-gcc –version)
Newer isn’t always better! 😀
I’m curious about why the UPC from a British car part was used on the box…
http://www.upcdatabase.com/item/5012345678900
😉
Ohhhhh… Those errors are from the change in compiler version. It seems the new version (3.x and/or 4.x) doesn’t like lines in #defines being wrapped by adding a backslash at the end. Just remove the backslashes and extra whitespace and put the contents of each #define on a single line.
The short version of the libgccvb.h story is as follows:
A formal committee was never convened to make a standard, so all the code that was discovered, developed, etc. early on was traded between various VB hackers until it was eventually decided to “slap something together” and distribute it with the (then, “state-of-the-art”) GCC 2.95-based compiler/tools (which started life as an NEC PCFX compiler, BTW).
However, since there was no central repository (until PlanetVB, but even then, there was no impetus to keep it updated), as more and more was discovered/developed, each hacker tended to cobble together his own version of the “library”, which he would then have to distribute along with anything he shared, since it wouldn’t compile with the “standard” file. Most of the files are very similar, but there have been a few major changes/additions (like the aforementioned WAM/WA change).
The End 😉
There have been many attempts to start another, more standardized library (and keep it up to date this time… for real!), but so far, nothing has materialized…
In addition to the libgccvb.h story, there is also a “crt0.o” story, but it’s much shorter and only really interesting to history buffs (like the Bound High Civil War Reenactment Society), so don’t worry about it 😉
-
This reply was modified 15 years, 11 months ago by
RunnerPack.
Vaughanabe13 wrote:
The reason I didn’t post the errors was because A)There were a ton of them and B) I couldn’t copy/paste text from cygwin and I was too lazy to figure out a way around that or to type it out manually.
Weird… I’ve never had a problem copying out of cygwin. In fact, whenever I select something, it gets copied automatically. Are you running XP, Vista, 7? Maybe you need to tweak the properties of the shell window. Mine has “QuickEdit Mode” and “Insert Mode” both checked.
No, that makefile won’t be able to find source .c files unless they are in one of the directories mentioned in the makefile (or you have to add another one).
Yeah, that’s kinda what I said 😛
I just don’t understand why the makefile tries to create a directory tree at the end. It always creates a folder called “.make-devel” or something like that. I’m not sure if that’s supposed to be a backup, since it would be a hidden directory in linux, but in Windows obviously it shows up, and therefore it’s annoying.
That’s where it puts the compiled object files, instead of cluttering up the source directory (which I find more annoying than one extra dotted directory, but to each his own). You should be able to change that easily enough. You could also make it hidden in Explorer (unless you’ve set it to show hidden files, like I have ;-)) You could even make the final elf and vb binaries end up in the source dir, or anywhere else for that matter.
As mentioned in the other thread, the makefile is a little generic right now. I didn’t come up with it, but it serves my present needs, so I haven’t seen the need to modify it much (although I have tweaked my copy a bit…)
I didn’t know there were multiple versions of libgccvb.h. That must be the problem then.
Yep, it’s been one of the major stumbling blocks for beginning VB programmers. I’m definitely going to focus on solving that after this compo ends and before the next one starts 😉