AfBu [Lexaloffle Blog Feed]https://www.lexaloffle.com/bbs/?uid=10617 CHIP-8 Emulator <p>New games:<br /> <table><tr><td> <a href="/bbs/?pid=14385#p"> <img src="/bbs/thumbs/pico14478.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=14385#p"> CHIP-8 Emulator: WORM V4 (hi-res) 1.5</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=14385#p"> [Click to Play]</a> </td></tr></table> <br /> <table><tr><td> <a href="/bbs/?pid=14385#p"> <img src="/bbs/thumbs/pico14477.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=14385#p"> CHIP-8 Emulator: ASTRO DODGE (hi-res) 1.4</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=14385#p"> [Click to Play]</a> </td></tr></table> </p> <p>Games:<br /> <table><tr><td> <a href="/bbs/?pid=14385#p"> <img src="/bbs/thumbs/pico14411.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=14385#p"> CHIP-8 Emulator: RUSH-HOUR 1.3</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=14385#p"> [Click to Play]</a> </td></tr></table> <br /> <table><tr><td> <a href="/bbs/?pid=14385#p"> <img src="/bbs/thumbs/pico14384.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=14385#p"> CHIP-8 Emulator: INVADERS 1.0</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=14385#p"> [Click to Play]</a> </td></tr></table> <br /> <table><tr><td> <a href="/bbs/?pid=14385#p"> <img src="/bbs/thumbs/pico14387.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=14385#p"> CHIP-8 Emulator: TETRIS 1.0</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=14385#p"> [Click to Play]</a> </td></tr></table> </p> <p>Demos:<br /> <table><tr><td> <a href="/bbs/?pid=14385#p"> <img src="/bbs/thumbs/pico14479.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=14385#p"> CHIP-8 Emulator: TRIP8 (hi-res demo) 1.5</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=14385#p"> [Click to Play]</a> </td></tr></table> </p> <p>I am back with new experiment - real emulator of my second favorite retro platform for my first favorite retro platform :)</p> <p>You can show virtual keypad by pressing B on P2 controller, then use P2 arrows and A button to press keys.</p> <p>Emulator is preloaded with those games:</p> <ul> <li>Rush Hour by Hap</li> <li>Astro Dodge (hi-res)</li> <li>Worm V4 (hi-res)</li> <li>Space Invaders by David Winter</li> <li>Tetris.</li> <li>TRIP8 hi-res demo</li> </ul> <p>Rush Hour controls:</p> <ul> <li>ARROWS - movement</li> <li>Z - select<br /> <div><div><input type="button" value=" Show " onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = ' Hide '; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = ' Show '; }"></div><div><div style="display: none;">Only code I found: 4A10 :D</div></div></div></li> </ul> <p>Worm V4 controls:</p> <ul> <li>ARROWS - movement</li> <li>Z - reset</li> </ul> <p>Astro Doge controls:</p> <ul> <li>ARROWS - movement</li> <li>Z - start</li> </ul> <p>Space Invaders controls:</p> <ul> <li>LEFT/RIGHT - movement</li> <li>Z - shoot</li> </ul> <p>Tetris controls:</p> <ul> <li>LEFT/RIGHT - move</li> <li>UP - rotate</li> <li>DOWN - drop</li> </ul> <p>Some technical details:</p> <ul> <li>emulator runs at 1500 cycles per second (successfully tested at 3000 cycles per second)</li> <li>timers are set correctly to 60Hz</li> <li>game rom is stored as map data (currently 1 game per pico rom)</li> <li>screen is stored directly in spritesheet</li> <li>pico keys are custom-mapped to chip8 keys</li> <li>cpu specification: 35 opcodes, 16 8-bit registers, 64x32 b/w screen, 4k rom/ram</li> </ul> <p>Changelog:<br /> <div><div><input type="button" value=" Show " onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = ' Hide '; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = ' Show '; }"></div><div><div style="display: none;"><table style="width:640px" cellspacing=0 cellpadding=10><tr><td bgcolor=#ffeedd><span style="color: #101010;"><strong>1.5</strong></p> <ul> <li>fixed sprite drawing</li> <li>added emulator restart button (for games that end in loop or halt)<br /> <strong>1.4</strong></li> <li>fixed clear screen routine</li> <li>added support for hi-res mode<br /> <strong>1.3</strong></li> <li>fixed key handling</li> <li>added full chip8 keypad (p2 controller)<br /> <strong>1.2</strong></li> <li>fixed font sprite location to reflect emulator's default font position in memory<br /> <strong>1.1</strong></li> <li>simple debugger mode easily switchable by variables</li> <li>wait for key-press fixed</li> <li>beep fixed</li> <li>shl and shr instructions fixed<br></span></td></tr></table></div></div></div></li> </ul> <p>If anyone want to take a look and play, please use RUSH-HOUR rom. Many bugs I found are fixed there ;)</p> https://www.lexaloffle.com/bbs/?tid=2492 https://www.lexaloffle.com/bbs/?tid=2492 Sat, 19 Sep 2015 22:34:43 UTC PICO-8 Emulator <p>Hey guys,<br /> I was playing with crazy idea in my mind again and just wanted to give it a go. I was wondering how hard it would be to create emulator for PICO8. Program that can load catridges and play them (read bbs player without bbs). Since it's all based on lua (witch I have no experience implementing) and I am really bad at bitwise operations (witch are really crucial when working with retro stuff) I decided to create one to learn something new. Here is my first attempt. Far from being good or complete and I don't know if I would ever want to finish it...but...you never know :D</p> <p><object width="640" height="400"><param name="movie" value="https://www.youtube.com/v/7DPiMglpNX0&hl=en&fs=1&rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="https://www.youtube.com/v/7DPiMglpNX0&hl=en&fs=1&rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="400"></embed></object></p> <p>Some facts:</p> <ul> <li>written in C# .NET 4.5 profile</li> <li>used NLua library/wrapper for code execution</li> <li>cartridge loading from png files (anyone want .net library for this? I can create one)</li> <li>screen is blitted to windows form directly, no graphics libraries used so it's not very fast when scaled up</li> <li>implemented features: <ul> <li>_update/_draw methods calling</li> <li>fully working palette manipulation (pal, palt)</li> <li>flipping graphics from ram to vram (flip)</li> <li>clear screen buffer (cls)</li> <li>full implementation of basic sprite drawing (spr)</li> <li>some mathematical functions (flr, sin, cos)</li> </ul></li> </ul> <p>Ps: I am Windows Phone user, I don't think there will ever be official player for my mobile platform so I will maybe create my own :D</p> <p>Current testing cartridge:<br /> <table><tr><td> <a href="/bbs/?pid=13733#p"> <img src="/bbs/thumbs/pico13732.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13733#p"> Emualtor Testing Cart</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13733#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=2422 https://www.lexaloffle.com/bbs/?tid=2422 Sat, 05 Sep 2015 21:53:37 UTC Pirated cartridges <p>I was experimenting with png cartridge format (thanks <strong>asterick</strong> for your awesome <a href="https://www.lexaloffle.com/bbs/?tid=2400">work</a>) and I got this little idea:</p> <p>For nearly every console in the past, there were unofficial, hacked cartridges with unlicensed or pirated games, and this is something that even PICO should have!</p> <p>Go ahead and grab my pirated copy of Celeste, it's shipped on dark cartridge with custom print on top!</p> <img style="" border=0 src="https://www.lexaloffle.com/bbs/cposts/1/13641.p8.png" alt="" /> <p> <table><tr><td> <a href="/bbs/?pid=13642#p"> <img src="/bbs/thumbs/pico13641.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13642#p"> Pirated Celeste</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13642#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=2413 https://www.lexaloffle.com/bbs/?tid=2413 Thu, 03 Sep 2015 18:50:57 UTC 3D Dungeon <p> <table><tr><td> <a href="/bbs/?pid=13216#p"> <img src="/bbs/thumbs/pico13244.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13216#p"> 3D Dungeon 0.2</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13216#p"> [Click to Play]</a> </td></tr></table> </p> <p>Recently I started playing with raycasting and I immediately wanted to create a real game with it, so here is first preview of my 3D suqare dungeon.</p> <img style="" border=0 src="https://www.lexaloffle.com/bbs/files/10617/PICO-8_3.gif" width=256 height=256 alt="" /> <p>V0.2 features:</p> <ul> <li>wall text system</li> <li>portal system</li> <li>ground/ceiling color can change in locations</li> <li>item system (food+gold)</li> <li>gui (health, gold, experience/level, compass)<br /> Notable bug: when you try to read text that is not defined it's id will popup on screen and game will be stopped.</li> </ul> <p>V0.1 features:</p> <ul> <li>raycasting engine with dynamic rendering quality for smooth movement</li> <li>collisions based on tile flags</li> <li>16x16 pixels textures</li> <li>8x16 pixels transparent sprites rendered using simple (column based) z-buffer</li> <li>basic npc system that allows random movement of monsters around map</li> </ul> <p>Controls: arrows for movement</p> <p>Original 3d experiment thread is <a href="https://www.lexaloffle.com/bbs/?pid=13214">here</a>.</p> <p>Older versions:<br /> <table><tr><td> <a href="/bbs/?pid=13216#p"> <img src="/bbs/thumbs/pico13215.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13216#p"> 3D Dungeon 0.1</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13216#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=2345 https://www.lexaloffle.com/bbs/?tid=2345 Thu, 27 Aug 2015 19:27:27 UTC 3D Experiment <p> <table><tr><td> <a href="/bbs/?pid=13195#p"> <img src="/bbs/thumbs/pico13694.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13195#p"> 3D Experiment 0.3</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13195#p"> [Click to Play]</a> </td></tr></table> </p> <p>Simple ray-caster experiment.</p> <p>It's not perfect, but it's kinda working and I hope it can serve as starting point for some awesome 3D games - especially I am thinking about some cool dungeon/rpg, that would be awesome!</p> <p>Controls: arrows to move</p> <p><strong>Update 1.1:</strong></p> <ul> <li>added fish-eye effect reduction</li> <li>added dynamic quality settings (when camera moves, quality is lowered)</li> <li>draw distance, step &amp; quality setting can be adjusted in code</li> </ul> <p>Older versions:<br /> <table><tr><td> <a href="/bbs/?pid=13195#p"> <img src="/bbs/thumbs/pico13194.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13195#p"> 3D Experiment 1.0</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13195#p"> [Click to Play]</a> </td></tr></table> <br /> <table><tr><td> <a href="/bbs/?pid=13195#p"> <img src="/bbs/thumbs/pico13203.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13195#p"> 3D Experiment 1.1</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13195#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=2344 https://www.lexaloffle.com/bbs/?tid=2344 Thu, 27 Aug 2015 11:05:37 UTC List files <p>Hello, anyone knows how &quot;files&quot; from system api works? I want to have all cartridge names in array or something like that...</p> <ul> <li>I tried to use it as function - it's a nil value</li> <li>I tried to print it - result is &quot;false&quot;</li> <li>I tried to iterate using foreach(files,print) - nothing happened</li> </ul> <p>Am I missing something or this is not yet implemented?</p> <p>Thanks.</p> https://www.lexaloffle.com/bbs/?tid=2335 https://www.lexaloffle.com/bbs/?tid=2335 Tue, 25 Aug 2015 11:42:44 UTC Viking's Mind <p> <table><tr><td> <a href="/bbs/?pid=13037#p"> <img src="/bbs/thumbs/pico13040.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=13037#p"> Viking's Mind 1.0</a><br><br> by <a href="/bbs/?uid=10617"> AfBu</a> <br><br><br> <a href="/bbs/?pid=13037#p"> [Click to Play]</a> </td></tr></table> </p> <p>Two mighty Viking warriors are splitting loot after great battle but only the clever one can have more of it!</p> <p>Simple game for 1-2 players. Loot is falling onto table, you can grab it by pressing your action button, but be sure not to wait too long, otherwise your opponent will sure take it first! Whoever reaches limit first wins the game.</p> <p>Controls:<br /> Red-bearded warrior: <strong>Z</strong><br /> Blue-bearded warrior: <strong>DOWN ARROW</strong><br /> Limit selection: <strong>LEFT &amp; RIGHT ARROWS</strong></p> <p>This game was heavily inspired by Mind Fuck by Anna Anthropy (<a href="http://auntiepixelante.com/">auntiepixelante.com</a>)</p> https://www.lexaloffle.com/bbs/?tid=2323 https://www.lexaloffle.com/bbs/?tid=2323 Sun, 23 Aug 2015 22:34:51 UTC