Forum Replies Created
-
AuthorPosts
-
Jeremy WilliamsKeymaster
Cool idea!
Jeremy WilliamsKeymasterI just attached a battery to my breadboard Game Frame and my code worked exactly as intended. Can you describe what you mean when you say it didn’t work?
With my code, you do have to set the time once, but after that it retains the time between power cycles. Your code change to adjustClock() will set the time to compile time rather than ask the user to manually set it. At best, this will be a second or two behind (since it’s not actually set until after compile, when the board reboots and runs code), and it will revert to compile time if the battery dies or is removed (rather than ask the user to reset the clock).
Jeremy WilliamsKeymasterI don’t think that would do it, exactly. There’s a boolean that tracks whether it’s been set. Try the attached project and let me know if it works. If it does, I’ll push the changes to GitHub.
Attachments:
You must be logged in to view attached files.Jeremy WilliamsKeymasterVery cool, onkel! I’ll try to get something written tonight but I’ve come down with a cold so fatigue may get the better of me. I’ll follow up here when it’s ready.
Jeremy WilliamsKeymasterWait, “write only?” I assume you meant read only…? If so, you should still be able to copy the data off. In any case, please send me an email (jeremy at this domain) and I’ll send you a link to the default SD contents.
Jeremy WilliamsKeymasterAre you using the supplied SD adapter? It has a little write protection switch on it. Make sure it’s in the correct position.
Jeremy WilliamsKeymasterAs you probably guessed, that means the system can’t read from SD. Does it happen during the same animation every time? Have you tried ejecting and inserting the microSD card a few times to make sure it’s making good contact? Do you have another microSD card you could try in order to figure out if the problem is the card itself?
Jeremy WilliamsKeymasterOh, very cool! I can see how embedding the zigzag into the file structure would greatly improve frame rate. Clever!
Anyway, yes — the filmstrips are basically vertical sprite sheets of 16×16 spites. They’re not as efficient as your method, but they get you to 24/25 fps.
Jeremy WilliamsKeymasterThat’s really interesting, Glenn. To your original question, I don’t have a problem with The Incredibles render I did, which is around 150,000 frames. I did the Lego Movie too, which runs just as smooth. According to my debug output, they run at approximately 24fps. As I’m sure you know, my script above outputs filmstrip BMPs that are 2000 frames long, so I’m confused why your “few hundred frames” movie created multiple files. The very reason for the filmstrips is to keep the system from having to open new files for each frame. The whole Incredibles movie is only 78 BMP files, and switching files doesn’t appear to cause slowdown.
I would be curious if you experienced the same problem with a freshly formatted microSD card.
Nonetheless, your solution sounds like it creates much higher frame rate playback. I’m very curious what your file format looks like, and why it’s so much faster. BMPs practically mirror the frame buffer byte-for-byte.
Jeremy WilliamsKeymasterYeah, this can happen with fast animations that contain many files, especially when the files are written on various parts of the microSD media. One way to solve it might be to copy off your data, format the microSD (FAT32), and then copy your files back on. Another way might be to convert your multi-file animation into one long filmstrip style animation.
Jeremy WilliamsKeymasterSet the timer to infinity. Hit SETUP three times, and then hit NEXT until you see a sideways 8 symbol.
Jeremy WilliamsKeymasterYes, precisely. Try replacing one of the steel screws with the nylon one. It is slightly longer and will compress the screen layers.
Jeremy WilliamsKeymasterHere’s a quick diagram of how I think you would do it. I’ve never actually tried it, but this is how it should work. Only the one pin needs to be severed, but it’s very important that it not touch the PCB or it will be grounded. The soldering job is not for the weak of heart. Ideally you would use a hot air rework station to remove the DS1307 chip, bend that battery pin upwards, and then reattach the other pins to the PCB as before.
If anyone tries this, let me know! I’d be happy to provide you with some customized firmware to support it.
Attachments:
You must be logged in to view attached files.Jeremy WilliamsKeymasterTry not using the resize tool. Instead use Image -> Image Resize from the menus. Use the “nearest neighbor” resampling option.
Jeremy WilliamsKeymasterAnother great find, Tim! I can’t wait to drop these on mine. The others you’ve found are among my favorites.
By the way, the jump at the end of the GIF is because my script only previews the first 250 frames.
-
AuthorPosts