<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-349138489475101445</id><updated>2012-01-16T19:15:18.703+02:00</updated><title type='text'>Cult of 999</title><subtitle type='html'>Rise and Fall of Paradroid Redux</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>42</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-8456052642204222581</id><published>2010-07-25T13:21:00.007+03:00</published><updated>2010-07-25T13:54:11.805+03:00</updated><title type='text'>Three Laws of Robotics</title><summary type='text'>A robot may not injure a human being or, through inaction, allow a human being to come to harm.A robot must obey any orders given to it by human beings, except where such orders would conflict with the First Law.A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.It's clear that droids in Paradroid violate the first two laws, but that </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/8456052642204222581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=8456052642204222581' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8456052642204222581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8456052642204222581'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2010/07/three-laws-of-robotics.html' title='Three Laws of Robotics'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5415458794564979046</id><published>2010-07-18T11:46:00.006+03:00</published><updated>2010-07-23T17:56:21.689+03:00</updated><title type='text'>Not dead yet, part 2</title><summary type='text'>It may have taken two years, but here is the newest and greatest version!Both original and Metal Edition graphics are now in the same executable, droids have slightly modified AI, high score saving should work with most common expansions (you may have to disable your disk speeder cartridge though) and there is a new frontend. Can you name all the games from where I borrowed something?Some minor </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5415458794564979046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5415458794564979046' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5415458794564979046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5415458794564979046'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2010/07/not-dead-yet-part-2.html' title='Not dead yet, part 2'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-8212479932816273056</id><published>2010-01-01T18:12:00.004+02:00</published><updated>2010-01-01T22:04:28.198+02:00</updated><title type='text'>Crash Boom Bang!</title><summary type='text'>Ever tried disrupting the last droid on ship to smithereens and entering lift when the explosion was still going on? Not? Good. That would have crashed the game right there. Very annoying, especially if you had just quadrupled your all time high score...What are the changes of someone completing a ship and entering lift before deck is shut down? I don't know, but I managed to do so! Then I </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/8212479932816273056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=8212479932816273056' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8212479932816273056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8212479932816273056'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2010/01/crash-boom-bang.html' title='Crash Boom Bang!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-4200750390183543973</id><published>2009-12-30T20:14:00.002+02:00</published><updated>2009-12-30T20:17:10.484+02:00</updated><title type='text'>NTSC Blues</title><summary type='text'>Why didn't anyone remind me that it would be nice if the new front-end worked on NTSC as well...Answers on a postcard, please.</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/4200750390183543973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=4200750390183543973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/4200750390183543973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/4200750390183543973'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2009/12/ntsc-blues.html' title='NTSC Blues'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-8790229510245421646</id><published>2008-07-06T19:17:00.008+03:00</published><updated>2008-07-07T04:09:41.230+03:00</updated><title type='text'>Time is of the Essence</title><summary type='text'>After reading about Mike Dailly's raster split trouble I decided to write a bit about how the top split is done in Paradroid Redux.There are three things to do when playing area begins:change background colorstart character displaystart sprite displayThe first one is just $d021 change, other two require a bit of trickery.To mask vertically scrolling characters one would usually use illegal </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/8790229510245421646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=8790229510245421646' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8790229510245421646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8790229510245421646'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2008/07/time-is-of-essence.html' title='Time is of the Essence'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-2694072121442038862</id><published>2008-06-23T23:43:00.003+03:00</published><updated>2008-06-24T13:06:44.712+03:00</updated><title type='text'>Have a nice summer solstice(ish)</title><summary type='text'>To honor the sun I give you a new release - or two releases actually.My plan was to build an unified version with both graphic sets held in memory all the time, but that didn't happen due lack of memory. Too bad, having different graphics on different decks would have given some more variety to the game.I did manage to fit all necessary data into memory, but as I had to EOR fonts together there </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/2694072121442038862/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=2694072121442038862' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2694072121442038862'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2694072121442038862'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2008/06/have-nice-summer-solsticeish.html' title='Have a nice summer solstice(ish)'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-223427271245355620</id><published>2008-04-20T22:51:00.003+03:00</published><updated>2008-04-29T10:08:33.265+03:00</updated><title type='text'>Not quite dead yet</title><summary type='text'>Here is little something for you who fear that the project is dead. Not much have changed though:Subgame should now take 10 seconds regardless whether you're playing on C64 or C128. That's still slightly longer than original, but way better than 12 seconds.Game should finally be Drean 64 compatible. I thought I put the code for this into the game 18 months ago, but apparently I didn't. Well, </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/223427271245355620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=223427271245355620' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/223427271245355620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/223427271245355620'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2008/04/not-quite-dead-yet.html' title='Not quite dead yet'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-8752959086944323256</id><published>2007-12-25T20:21:00.000+02:00</published><updated>2008-01-02T19:51:51.525+02:00</updated><title type='text'>Have a nice winter solstice</title><summary type='text'>For those too busy to read any further, click here.Important: archive updated January 2nd, you need to delete old high score file as it's not compatible any more.Due to some rather unfortunate events in the family I haven't had as much time for PR as I would have liked to, so there are no major changes. Minor changes include:fixed all but one of known bugs.2500 bonus points if you clear a ship </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/8752959086944323256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=8752959086944323256' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8752959086944323256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8752959086944323256'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/12/have-nice-winter-solstice.html' title='Have a nice winter solstice'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-7632699954961504472</id><published>2007-10-07T00:17:00.000+03:00</published><updated>2007-10-07T00:55:21.706+03:00</updated><title type='text'>I'm sane, thank you :P</title><summary type='text'>Contrary to some other claims I'm not crazy, or at least I imagine so.That's not the only error in Paradroid talk page - so here we have (drumroll, please)The Definite C64 Paradroid Version GuideParadroid (original), 1985Paradroid Competition Edition, 1986This one is identical to the original, except that it has some vertical blank waits removed. That allows the game run faster most of the </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/7632699954961504472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=7632699954961504472' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7632699954961504472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7632699954961504472'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/10/im-sane-thank-you-p.html' title='I&apos;m sane, thank you :P'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-6078682788673520792</id><published>2007-09-24T19:24:00.000+03:00</published><updated>2007-09-24T19:52:32.646+03:00</updated><title type='text'>Tweaking</title><summary type='text'>Too little time for anything major (yet!) but scoring and subgame have seen some little changes.Bonus score if you do well in subgame. 20% bonus for each remaining pulser if you win 11-1, 40% if you win 12-02000 point bonus if you're wimp and use only transfer to overtake the ship. Not enough to compensate for score lost by not shooting droids, as I don't want to encourage that kind of cowardism </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/6078682788673520792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=6078682788673520792' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6078682788673520792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6078682788673520792'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/09/tweaking.html' title='Tweaking'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-7486949526867556179</id><published>2007-09-05T13:44:00.000+03:00</published><updated>2007-09-05T17:01:37.135+03:00</updated><title type='text'>Wasting time</title><summary type='text'>How can one waste gazillions of cycles to mirror one sprite? Quite easily, just forget speed and concentrate on compact code.MirrorSprite     ldy  #0    sty  src    sty  .5+1 ;   src = A&lt;&lt;6 | $4000     sec    ror    ror  src    lsr    ror  src    sta  src+1 ;   ptr = X&lt;&lt;6 | $4000     txa    sec    ror    ror  .5+1    lsr    ror  .5+1    sta  .5+2 ;   get sprite multicolor flag     ldy  #$3F    </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/7486949526867556179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=7486949526867556179' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7486949526867556179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7486949526867556179'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/09/wasting-time.html' title='Wasting time'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-3956048266662228888</id><published>2007-09-04T20:34:00.000+03:00</published><updated>2007-09-04T21:21:25.587+03:00</updated><title type='text'>Byte Liberation Front</title><summary type='text'>I keep surprising myself with all the memory I can squeeze out when I start trying. When reordering the multicolor charset from the Metal Edition Paradroid I finally took a good peek at the alpha charset. Eliminating duplicate chars and blanks freed another 31*8 bytes and couple more in graphics font. There are several 8-byte data areas I can scatter anywhere in the memory, but to keep it neater </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/3956048266662228888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=3956048266662228888' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/3956048266662228888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/3956048266662228888'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/09/byte-liberation-front.html' title='Byte Liberation Front'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5152238137275959090</id><published>2007-08-26T13:53:00.000+03:00</published><updated>2007-08-26T14:09:27.076+03:00</updated><title type='text'>Lies, damned lies, and statistics</title><summary type='text'>I needed something to use when deciding which tables benefit most from move to zero page, so I counted words and their occurences in all source files. In addition to giving me the info I wanted, it revealed something else.Paradroid Redux Top 30 ML Instructions  1549    lda             202    adc             119    bmi  1362    sta             175    lsr             108    iny   679    jsr</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5152238137275959090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5152238137275959090' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5152238137275959090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5152238137275959090'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/lies-damned-lies-and-statistics.html' title='Lies, damned lies, and statistics'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-2613111785730708361</id><published>2007-08-25T20:59:00.000+03:00</published><updated>2007-08-25T22:58:29.250+03:00</updated><title type='text'>Zero page roundup</title><summary type='text'>I finally took the time to change all zero page variable declarations from var = $02 to var ds.b 1 and removed all variables which aren't used any more. I suspected I would end up with 30 to 40 free zero page locations, but it turned out to be about 70 bytes! I swiftly used half of it for the two most used object variable tables (16 bytes each), which makes accessing them both faster and smaller.</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/2613111785730708361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=2613111785730708361' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2613111785730708361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2613111785730708361'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/zero-page-roundup.html' title='Zero page roundup'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-485517708833125939</id><published>2007-08-24T12:36:00.000+03:00</published><updated>2007-08-24T12:46:24.749+03:00</updated><title type='text'>Squish 'em</title><summary type='text'>Two bugs found and fixed, both of them having the same root cause. Whenever you change deck in lift, it's built immediately, even if you don't actually enter that deck. This avoids a delay when you exit the lift. However, if you then decide to go back to the deck where you entered lift after, game keeps previous droid/deck status intact but deck map is reset to the default state.Now, the two bugs</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/485517708833125939/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=485517708833125939' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/485517708833125939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/485517708833125939'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/squish-em.html' title='Squish &apos;em'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5214621320954206744</id><published>2007-08-19T20:05:00.000+03:00</published><updated>2007-08-19T20:16:50.558+03:00</updated><title type='text'>Another week gone by</title><summary type='text'>And so time passed by with nothing extraordinarily great done...I found a bug in the latest beta - it teleports droids to the great unknown because I didn't adjust the teleport routine when I changed the waypoint system. Fixing that didn't take long, but with the released beta you need to enter another deck and come back to get droids back. Just visiting a lift doesn't work.Multicolor is almost </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5214621320954206744/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5214621320954206744' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5214621320954206744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5214621320954206744'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/another-week-gone-by.html' title='Another week gone by'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-7992183931693704721</id><published>2007-08-13T19:29:00.000+03:00</published><updated>2007-08-14T00:04:51.491+03:00</updated><title type='text'>How about a nice game of chess?</title><summary type='text'>No chess here, I'm afraid. However, if you prefer more action then try the latest version of Paradroid Redux instead. Every bug listed here has been fixed (I hope).I guess I now can go back to do multicolor changes. I really should have reordered the MC font when I did the hires one, now I need to dig out old notes telling which char ended where.UpdateIt seems that this version finally runs solid</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/7992183931693704721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=7992183931693704721' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7992183931693704721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7992183931693704721'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/how-about-nice-game-of-chess.html' title='How about a nice game of chess?'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5856471415039289479</id><published>2007-08-12T21:52:00.000+03:00</published><updated>2007-08-12T22:41:00.382+03:00</updated><title type='text'>Objects want to be free - but only be freed once</title><summary type='text'>This weekend wasn't all bad in spite of having both my birthday and wedding anniversary (yes, my wife wanted to make sure i wouldn't forget the latter! ;) as I found the reason for the double-free bug - or at least one of the reasons.I outlined the collision check loop(s) in an earlier entry. What's not shown in that code snippet is caching of outer loop object type, done to speed up the </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5856471415039289479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5856471415039289479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5856471415039289479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5856471415039289479'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/objects-want-to-be-free-but-only-be.html' title='Objects want to be free - but only be freed once'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-2493383809186148402</id><published>2007-08-08T20:36:00.000+03:00</published><updated>2007-08-08T20:56:44.495+03:00</updated><title type='text'>Hum Bug Betatesters</title><summary type='text'>No one tells me about bugs... so I just have to play the game to find them myself! :)Droid library had two bugs: every droid class text was the player class, and droid entries went from 0 to 23 instead of 1 to 24.Droid count in console was wrong, it ignored some droids.Deck layout horizontal scroll was broken. You all did know you can scroll it now, didn't you?Maintenance deck had one droid too </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/2493383809186148402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=2493383809186148402' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2493383809186148402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2493383809186148402'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/hum-bug-betatesters.html' title='Hum Bug Betatesters'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-7759245908211245793</id><published>2007-08-04T22:41:00.000+03:00</published><updated>2007-08-05T01:07:54.039+03:00</updated><title type='text'>Morphing into multicolor mode</title><summary type='text'>I made a quick disassembly of Paradroid Metal Edition to see how much I need to change the code to make it possible to use either hires or multicolor graphics. The answer: not much. Color tables are different because only the lowest eight colors are available for character color and because of extra entries for multicolor registers. To use ME graphics I only have to reserve some extra space for </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/7759245908211245793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=7759245908211245793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7759245908211245793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7759245908211245793'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/morphing-to-multicolor.html' title='Morphing into multicolor mode'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-1606298429249215060</id><published>2007-08-03T21:21:00.000+03:00</published><updated>2007-08-03T21:34:21.271+03:00</updated><title type='text'>Weekend fun</title><summary type='text'>After recovering from the last weekend I finished the latest changes. I hope I didn't break anything in the process... Check it out yourself.Lots of flicker removed when changing screens.Some internal changes which makes it run faster, although it still drops to every 3rd frame under extreme situations.Game now knows about droid visibility changes which allows some more AI.This version has most </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/1606298429249215060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=1606298429249215060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1606298429249215060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1606298429249215060'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/08/weekend-fun.html' title='Weekend fun'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-1566258437208074518</id><published>2007-07-24T21:59:00.000+03:00</published><updated>2007-07-24T22:09:36.598+03:00</updated><title type='text'>Cleaning up</title><summary type='text'>Now that the worst bugs seemed to be fixed, I took some time to fix most of the flickering when the game changed screens. I did that once already, but delaying sprite writes made the flickering come back. Now everything seems to be fine except going to game mode, where sprites are delayed that one frame. I'm not sure if I bother to fix that or not - it's hard to notice the delay without slowing </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/1566258437208074518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=1566258437208074518' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1566258437208074518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1566258437208074518'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/cleaning-up.html' title='Cleaning up'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5534236404807560402</id><published>2007-07-24T00:01:00.000+03:00</published><updated>2007-07-24T00:28:11.340+03:00</updated><title type='text'>The mother of all bugs killed</title><summary type='text'>It seems that I finally nailed it! Whenever the collision check had to swap sprite indexes (to avoid having separate routines for droid-laser and laser-droid collision, for example) it also swapped counters for outer/inner loops.    lda $d015       ; active sprites    and #$7e        ; mask out player and player_fire    sta mask     ldy #7.outer_loop    asl mask    bcs .has_high_sprite.back_o    </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5534236404807560402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5534236404807560402' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5534236404807560402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5534236404807560402'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/mother-of-all-bugs-killed.html' title='The mother of all bugs killed'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-8716617015850311683</id><published>2007-07-23T11:04:00.000+03:00</published><updated>2007-07-23T12:00:37.331+03:00</updated><title type='text'>Another Droid in the Wall - not any more!</title><summary type='text'>As expected the game has some trouble running after the changes in droid allocation, but that did make me disable all collisions (which are the only remaining thing bugging because of allocation change) and enabling them one at a time. This pinpointed droid reversal bug into droid-droid collision.Simplified droid movement logic is as followsMove droid unless it's paused.If pause count is not NULL</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/8716617015850311683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=8716617015850311683' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8716617015850311683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8716617015850311683'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/another-droid-in-wall-not-any-more.html' title='Another Droid in the Wall - not any more!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-2978517429096463485</id><published>2007-07-21T18:55:00.000+03:00</published><updated>2007-07-21T19:30:58.405+03:00</updated><title type='text'>It's working - time to break it!</title><summary type='text'>After couple of changes the game now seems to run solid 25 Hz on PAL C64 (and should do 30 Hz on NTSC C128 but I have no means to verify that), but to make sure it stays that way I'm finally replacing the old droid table with a proper droid allocator à la Mike. That avoids copying data every time an object is removed.Direct result of that is that I can freely add more data for each droid as I </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/2978517429096463485/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=2978517429096463485' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2978517429096463485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/2978517429096463485'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/its-working-time-to-break-it.html' title='It&apos;s working - time to break it!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-8917049837784795714</id><published>2007-07-20T11:56:00.000+03:00</published><updated>2007-07-20T18:56:48.432+03:00</updated><title type='text'>Speeding causes fatal crash in space!</title><summary type='text'>"Did you really think you could run 1.3 MHz and not crash, sir?" the C128 cop asked me after the game went awry on my FrankenDiesel.It's true: the game was too fast on C128! What happened was that at the beginning of a game frame the main loop told IRQ "Grab sprite register data next display frame and stuff them into VIC-II when I'm busy minding other business, please" and went on to do its other</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/8917049837784795714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=8917049837784795714' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8917049837784795714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8917049837784795714'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/speeding-caused-fatal-crash-in-space.html' title='Speeding causes fatal crash in space!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-6770236276605745992</id><published>2007-07-16T23:16:00.000+03:00</published><updated>2007-07-16T23:25:20.230+03:00</updated><title type='text'>Double the fun!</title><summary type='text'>Rather quick new release, fixing some things:Subgame didn't clear it's local variables before retrying after deadlock.Background stars flickered on NTSC, now screen/star draw is done in two parts so stars get updated in time."Floating" player fire hopefully fixed by caching joystick position through the routine.Sound routine tweaked for sharper sounds, unfortunately this has changed couple of </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/6770236276605745992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=6770236276605745992' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6770236276605745992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6770236276605745992'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/double-fun.html' title='Double the fun!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-8851606762684614091</id><published>2007-07-16T18:35:00.000+03:00</published><updated>2007-07-16T19:39:53.154+03:00</updated><title type='text'>? Deadlock error, please debug</title><summary type='text'>I found the bug which broke the transfer game. Some time ago I got rid of routine which finds starting locations of tokenized strings and stored them into a temporary table for later use, and replaced it with realtime search. There was no speed difference anyway because of raster sync and that saved some memory. Not only in the printing routines, but I could remove now unnecessary temporary </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/8851606762684614091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=8851606762684614091' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8851606762684614091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/8851606762684614091'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/deadlock-error-please-debug.html' title='? Deadlock error, please debug'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-15297778554716419</id><published>2007-07-15T20:52:00.001+03:00</published><updated>2007-07-15T21:30:51.867+03:00</updated><title type='text'>Sound of optimization</title><summary type='text'>I went through the sound effect routine and optimized it a bit. As a result it's slightly faster, but what's more important is that now I can move all sfx zero page variables to "normal" memory and that will only cost one or two raster lines. That means that I have over 30 ZP locations which I can use for other purposes. Too bad that VICE doesn't have memory access profiler, as with one it would </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/15297778554716419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=15297778554716419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/15297778554716419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/15297778554716419'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/sound-of-optimization.html' title='Sound of optimization'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-6214174731719239557</id><published>2007-07-14T16:38:00.000+03:00</published><updated>2007-07-14T21:42:03.374+03:00</updated><title type='text'>It's playtime!</title><summary type='text'>Grab the new beta and have some fun.Changes since the last release:Decks have separate start position, you no longer start new ship on one of the waypoints.Several waypoints near lifts have been excluded from available droid positions, making it safer to enter some decks.Deck sections are completely separate from each other.Droids stay in the correct deck section between visits and if teleported </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/6214174731719239557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=6214174731719239557' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6214174731719239557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6214174731719239557'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/its-playtime.html' title='It&apos;s playtime!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-4966677155194480898</id><published>2007-07-13T23:55:00.000+03:00</published><updated>2007-07-14T00:25:13.782+03:00</updated><title type='text'>It works again!</title><summary type='text'>After some cursing, hair tearing and generic despair it's working again. Well, it awards deck bonus of 500 points when you clear deck section even when there are droids left in the other section, but that's a minor problem. The most important thing in that is that it now sees section as cleared and knows to turn off the lights,regardless of remaining droids. That means that droids stay put in </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/4966677155194480898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=4966677155194480898' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/4966677155194480898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/4966677155194480898'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/it-works-again.html' title='It works again!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-591689860513551362</id><published>2007-07-12T22:58:00.000+03:00</published><updated>2007-07-12T23:23:36.290+03:00</updated><title type='text'>All hail simplicity</title><summary type='text'>After I wrote the code to create all droids on ship I had second thoughts about it. The code was horrible mess, parsing deck data to get correct number of certain level droids into correct sections. Nested loops, lots of comparisons, checking every section to get droid distribution right. In the end I made one 256 byte table to place every droid where it belongs. 256 bytes is quite a lot of </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/591689860513551362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=591689860513551362' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/591689860513551362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/591689860513551362'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/all-hail-simplicity.html' title='All hail simplicity'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-1064013402506699369</id><published>2007-07-11T23:08:00.000+03:00</published><updated>2007-07-11T23:38:05.946+03:00</updated><title type='text'>NewsFlash! Viral infection grinds PR development to a halt!</title><summary type='text'>Not my computer, luckily. Most of the last two days has been used to salvage data from one of the worst infected computers I've seen. Booooooooring! My recommendation: buy removable HD. Copy data there. Format C: Reinstall.I've managed to teach the game quite a bit more about ship layout, droid distribution and other small things. Now it knows which deck part lifts connect and really should be </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/1064013402506699369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=1064013402506699369' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1064013402506699369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1064013402506699369'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/newsflash-viral-infection-grinds-pr.html' title='NewsFlash! Viral infection grinds PR development to a halt!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5245096592391620650</id><published>2007-07-10T00:07:00.000+03:00</published><updated>2007-07-10T00:34:24.316+03:00</updated><title type='text'>My God, it's full of stars!</title><summary type='text'>I'm not sure if I like stationary background stars (this time I nicked the idea from Uridium) as wall chars have couple of empty pixels at the edges. This means that stars will disappear before they reach the ship. This could be explained with diffraction in the micro-atmosphere around the ship, of course...Adding stars would be quite cheap - I only need to check for underlying char being "</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5245096592391620650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5245096592391620650' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5245096592391620650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5245096592391620650'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/my-god-its-full-of-stars.html' title='My God, it&apos;s full of stars!'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5620699158929839954</id><published>2007-07-08T23:55:00.000+03:00</published><updated>2007-07-09T00:51:49.070+03:00</updated><title type='text'>Bit by bit</title><summary type='text'>After I had to come up with a name for the fastloader I decided to post this bog-standard routine I use in Paradroid Redux to depack waypoint and droid distribution data. The only reason it's worth of posting is that it doesn't use any other register than accumulator.;   in: ax=ptrInitGetBits    stx .get+1    sta .get+2    lda #$80        ; start with end bit    sta cbits    rts  GetBits.1  asl </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5620699158929839954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5620699158929839954' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5620699158929839954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5620699158929839954'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/bit-by-bit.html' title='Bit by bit'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-5381252131131946110</id><published>2007-07-08T20:52:00.000+03:00</published><updated>2007-07-09T19:52:35.186+03:00</updated><title type='text'>Loading, please wait...</title><summary type='text'>I cleaned up XeO3 loader (yes, it's for Commodore 264 family) slightly and added couple of comments. You can find the loader + source code here, I hope it gets added to Plus/4 World soon so people can actually find it.The loader works with 1541/157x and 1581. Every bit is clocked separately, so it's safe to use interrupts while loading. It beats many 2-bit loaders, and allows keeping the screen </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/5381252131131946110/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=5381252131131946110' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5381252131131946110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/5381252131131946110'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/loading-please-wait.html' title='Loading, please wait...'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-1205016152915494465</id><published>2007-07-06T23:16:00.000+03:00</published><updated>2007-07-06T23:25:57.762+03:00</updated><title type='text'>629 - number of the crap</title><summary type='text'>No, not really. 883 still holds that position, but 629 is a close runner-up. 615 is bit more usable after damage adjustment, but I'm still not going to change my playing style.Lift exit bug seems to have gone away when I reverted back to the original code. I hope it stays there, too.</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/1205016152915494465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=1205016152915494465' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1205016152915494465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/1205016152915494465'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/629-number-of-crap.html' title='629 - number of the crap'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-7680969734771068606</id><published>2007-07-06T20:35:00.000+03:00</published><updated>2007-07-06T22:01:43.233+03:00</updated><title type='text'>Aye, captain! Turbolift is up and running</title><summary type='text'>One deck map is 16 KB of data, so it takes a while to build one from 64*16 byte layout. That's why lift movement between decks is as slow as it is - game builds the deck in advance to avoid delay when you exit the lift.I modified the lift routine to check if it was allowed to move up/down from the new deck and to pass that info to the deck building subroutine. Deck builder checks halfway through </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/7680969734771068606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=7680969734771068606' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7680969734771068606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7680969734771068606'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/aye-captain-turbolift-is-up-and-running.html' title='Aye, captain! Turbolift is up and running'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-3989204522444479145</id><published>2007-07-05T22:27:00.000+03:00</published><updated>2007-07-05T22:50:09.748+03:00</updated><title type='text'>?No space in brain error</title><summary type='text'>You all have noticed how 999 description text has extra space after the word "brain", haven't you? Twice, even. That's because the same string token is used for the first page of droid data, and space is needed to align the text. Three other strings are padded too, but they don't affect any other text. Instead of adding one more token costing five bytes I removed all trailing spaces and added </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/3989204522444479145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=3989204522444479145' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/3989204522444479145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/3989204522444479145'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/no-space-in-brain-error.html' title='?No space in brain error'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-7200333338858442353</id><published>2007-07-05T19:00:00.000+03:00</published><updated>2007-07-05T19:06:26.110+03:00</updated><title type='text'>I took the blue pill</title><summary type='text'>While the Matrix effect with Paradroid charset doesn't look all that bad (in fact I like it more with 1x2 charset) it looks really out of place when it's used inside the game. Next one to try is to get "true" random static. That may require more than four different "random" chars, which means some extra data to be moved around. I already re-use console icons for waypoint markers, swapping them in</summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/7200333338858442353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=7200333338858442353' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7200333338858442353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/7200333338858442353'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/i-took-blue-pill.html' title='I took the blue pill'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-4875150638797804903</id><published>2007-07-04T20:57:00.000+03:00</published><updated>2007-07-04T21:57:33.842+03:00</updated><title type='text'>Too kitsch, or not too kitsch: that is the question.</title><summary type='text'>Nothing much done today, except one completely unrelated routine inspired by some random web site. Funny thing, I have never thought about writing Matrix character drop effect for C64 before.Now I'm wondering how it would look with Paradroid font. Core routine is about 200 bytes, which is longer than the original TV static effect. However, I've saved quite a lot of space reserved for data, so I </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/4875150638797804903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=4875150638797804903' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/4875150638797804903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/4875150638797804903'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/too-kitsch-or-not-too-kitsch-that-is.html' title='Too kitsch, or not too kitsch: that is the question.'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-349138489475101445.post-6335310101046527614</id><published>2007-07-03T17:06:00.000+03:00</published><updated>2007-07-03T19:20:49.976+03:00</updated><title type='text'>Let There Be Light</title><summary type='text'>On a sunny summer day in Finland it finally happened - I gave in and started a blog about my Paradroid hack. Unlike PC remakes this one is made for the Commodore 64. (Enough links already? Can I stop it now?)The disassembly was completed over a year ago, and since then there have been many changes. Main goal was to give it a nice speed boost, but I couldn't resist changing some other things as </summary><link rel='replies' type='application/atom+xml' href='http://cultof999.blogspot.com/feeds/6335310101046527614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=349138489475101445&amp;postID=6335310101046527614' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6335310101046527614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/349138489475101445/posts/default/6335310101046527614'/><link rel='alternate' type='text/html' href='http://cultof999.blogspot.com/2007/07/let-there-be-light.html' title='Let There Be Light'/><author><name>TNT</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>8</thr:total></entry></feed>
