Join us on Discord!
You can help CodeWalrus stay online by donating here.

Improved Supersonic Ball HP PPL title animation (faster)

Started by Dream of Omnimaga, February 02, 2016, 04:49:45 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Dream of Omnimaga



This is the source of the program so far (some code is not indented because it was written on-calc and some is from 2013 or so:

// Supersonic Ball HP
// For the HP Prime
// Remake of original TI-83 Plus game
// By DJ Omnimaga
// (c) 2013-16 DJ Omnimaga
// http://codewalr.us

initialize();
fadeIn();
fadeOut();
titleScreen();
forVar1, forVar2, forVar3, aniCounter, ballAniFrm;

EXPORT ssball()
BEGIN

initialize();
fadeOut();
titleScreen();


// SCROLLING DEMO;
FOR Z FROM 0 TO 320 DO
FOR Y FROM 0 TO 304 STEP 16 DO
BLIT_P(G3,Y,0,16+Y,240,"spriteData",0,Z,16,240+Z);
END;
BLIT_P(G3,128,128,144,144,"spriteData",0,464,16,480,RGB(128,0,128));
BLIT_P(G3,32,80,288,164,"titleLogo",0,0,64,14,RGB(128,0,128));
BLIT_P(G0,G3);
END;
END;


titleScreen()
BEGIN
LOCAL colHeight=0, heightChg=0, heightChgDir=.12, bgOffset=0;
LOCAL enterPressed=0;

// Generate title background;
FOR forVar2 FROM 0 TO 240 STEP 16 DO
FOR forVar1 FROM 0 TO 320 STEP 16 DO
BLIT_P(G5,forVar1,forVar2,forVar1+16,forVar2+16,"spriteData",0,160,16,176);
END;
END;
// Generate the spinning balls on title screen;
FOR forVar1 FROM 0 TO 14 DO
FOR forVar2 FROM 0 TO 1 DO
BLIT_P(G5,16*forVar2+336,16*forVar1,16*forVar2+352,16*forVar1+16,"spriteData",0,16*forVar2+448,16,16*forVar2+464);
END;
END;

// Main title loop;
WHILE enterPressed=0 DO
BLIT_P(G3,0,0,320,240,G5,bgOffset,bgOffset,320+bgOffset,240+bgOffset);
FOR forVar1 FROM 0 TO 62 STEP 1 DO
heightChg := heightChgDir*2+heightChg;
IF heightChg>1.1 OR heightChg<-1.11 THEN
heightChgDir := -heightChgDir;
END;
colHeight := colHeight+heightChg;
BLIT_P(G3,32+(forVar1*4),27-colHeight,36+(forVar1*4),115+colHeight,"titleLogo",forVar1,0,forVar1+1,15,RGB(128,0,128));
IF ISKEYDOWN(30) THEN
enterPressed := 1;
fadeOut();
END;
END;

bgOffset := bgOffset+1;
IF bgOffset=16 THEN
bgOffset := 0;
END;

//spinning balls on each side
FOR forVar2 FROM 0 TO 1 DO
BLIT_P(G3,304*forVar2,0,304*forVar2+16,240,G5,16*ballAniFrm+336,0,16*ballAniFrm+352,240,RGB(128,0,128));
END;

//text with black outline rendering
FOR forVar1 FROM 0 TO 3 DO
FOR forVar2 FROM 0 TO 3 DO
IF (forVar2=0 OR forVar2=2) AND forVar1<2 THEN
BLIT_P(G3,64*forVar2+32,110*forVar1+5,64*forVar2+158,110*forVar1+20,"titleLogo",RGB(128,0,128));
END;
TEXTOUT_P("©2013-20XX DJ Omnimaga - codewalr.us",G3,25+forVar2,215+forVar1,3,#000039);
IF ballAniFrm=1 THEN
TEXTOUT_P("Press Enter",G3,107+forVar2,151+forVar1,6,#000039);
END;
END;
END;
TEXTOUT_P("©2013-20XX DJ Omnimaga - codewalr.us",G3,26,216,3,#FFFFFF);
IF ballAniFrm=1 THEN
TEXTOUT_P("Press Enter",G3,108,152,6,#FFFFFF);
END;
IF aniCounter=0 THEN
aniCounter := 1;
fadeIn();
ELSE
BLIT_P(G0,G3);
WAIT(0.015);
aniCounter := aniCounter+1;
IF aniCounter=3 THEN
aniCounter := 1;
ballAniFrm := NOT(ballAniFrm);
END;
END;
END;
END;

fadeIn()
BEGIN
   BLIT_P(G4,G3);
   FOR forVar1 FROM 16 DOWNTO 1 DO
      BLIT_P(G3,0,0,320/forVar1,240/forVar1,G4,0,0,320,240);
      FILLPOLY_P(G3,{{0,0},{320,0},{320,240},{0,240}}, #000000, (16*forVar1)-16);
      BLIT_P(G0,0,0,320,240,G3,0,0,320/forVar1,240/forVar1);
      WAIT(0.015);
   END;
END;

fadeOut()
BEGIN
   BLIT_P(G4,G0);
   FOR forVar1 FROM 2 TO 16 DO
      BLIT_P(G3,0,0,320/forVar1,240/forVar1,G4,0,0,320,240);
      FILLPOLY_P(G3,{{0,0},{320,0},{320,240},{0,240}}, #000000, 16*forVar1);
      BLIT_P(G0,0,0,320,240,G3,0,0,320/forVar1,240/forVar1);
      WAIT(0.015);
   END;
END;

initialize()
BEGIN
   // Main vars
   aniCounter := 0;
   ballAniFrm := 0;
   // Temporary screen and background storages;
   DIMGROB_P(G3,320,240);
   DIMGROB_P(G4,320,240);
   DIMGROB_P(G5,368,256,#FF00FF);
   FOR A FROM 1 TO 239 STEP 2 DO
      LINE_P(G8,0,A,320,A,#000000);
   END;
END;


   // Sprite data;
   ICON spriteData 89504E470D0A1A0A0000000D49484452000000100000023008060000008FC0EB7E0000253A494441547801ED7509745CD599E6F796DAA55269DF65CBB22DDBB2E5DD38188C81103A812C409399106C87A43BA4B34E27274B4F264470CEE464380D93F474672124E9D81D20A4B1432010C2663B84C536962D8317645BC8ABD652A94AAABDEACDFFDF57AFAA5E2DB28D9CC6C9F1AF7355F7DD7BFFEFFEEB77A5CE9B3F05BBD582B75F7A0A9F3DF94964CB0F9A7E06A96D85989795B8E09F98C435972DC5A9C1119C1A1A81244950039341A8728938B4E5E613703B1D505515C96412780198515F8325F36663DBAE7DE8689B09459185A2A228D0348DCED224128B0B8070242A14F980C366156BEDADCD3876E28C583F33E245B9A714E38109A12C001C761BACAA220E476331B158EE2EC1E0E89858EBED3F85603802A7C34EFB71E14A79991BE1E828AC1615524D534BDAE7151FBC0D8D35957879EF012C983D03DB7FF5339C4D4C0053C9CC2B3E800ABA992D79F3C8DBC252DFBEED5057DCF831B85C0EEC7EE330562E6CC7B69C5B5D1D6B446C6634D661CC17C0F1D303882712287339E1A37D75F68C46F4BE7D128A2CE3ED530342A97CC93A44A25111699BC522D6F8C651DF3892F46BB75A11E72C91C84FFF7127DE3E3D888960088DB5D5E9603AED7648340F452288C7E348D0AD4E0A7882147918C0F29C194DA82C2B45A5A70C5E9F5F2C5A699315F9D74DA646E36472A95E2B56AA1106665016D553EAC269AAAA182D70A5B14C0483B0919993A190EE2FA5EEA97FFF41C1E0AA2E8A2AE7937D0B47637A6AA890E69265BC6EA382E2DB222DB7112857A8060FD5C9D3BFF8A10E304EB7AA14C0181509FB389A423E7E6648B8364EA56E04B192D2E8A32A1CA08A343224DBE98609AA34AEF168CA2F96A5F3DB304687DB9AEB514A565A282363FE00B99A489F997CF34F504394E3100170DAEAAA2A529D5782677FF913311FDA9DEFF7B05185D4A96AC77D400766A7DB57A446968A56A4A9E54F12C8AC5A194B1796A1FB8D713CB7E329B84AAAE1705589FD6B56CDC686F56BF1C413AFE2687F08EFBFB699F61D5871D96AFCBFEF3F8233C3511D60EFE13EDC71CB1294B9EDF8DECF5FC5EB7FFA39DE3AB00B9170185BB6BC4CE51B1180B77EA41DF50D7578E5E51EECDAAB77ABCCCAA7FB770A0BAAAACBF0C8839FC30BBFDF829ABA663CF0E0369C198A60D5D20A4AA9845FFFE630EC0E87507EEFDA06EA0F1B94E5ED013CFBBB87D1D951835DBBDFC664C087CB2E7F0FBEFE4FFF4E1107EEBFEFB3F8C23FFD0247F73F86552B9AF1F4D37BD0506BC7BA6B56E1F917DF8234BB5EC66DB72E4247E7127CF35B9BF1911BE660CB13BDF8F6FFBA19ED0BD760C1D29BD3313BB8772B3EB5F12BF8F08DF3A92E8031AF1F4A45A98491611FF6ED3D44BD10C7F2A58D387A6C04D1D02836FCC37DD8B9E327084D0EE3A7FFF28FD8F4EFFF89A1D118DE38308CD9B3DC58D0D10E95BB92A36948456505F540124DCDD578FCA1AFA3A4D4835FFEECA7D8F1EAA0B8958A16CB1695E337BF3B0AD090BEF5854EBCB8ED3035548C7A0068A8B1126D47416D80CFFCFD5ABCF6EA1BD8D9AD976ED7B76E41C7D26B293B13A8A96FA7168F41E61B7DFE38AEBCAC5ADCC0CA2C5CB13F7EF08F4299C158FAFB8E61C6EC2BB070F9AD181E780BAF6E7B08CA1D1F5F8BDFFFA107C74F05F1CD6F7C08FFFC6F8FE248CF56BC7D625258B4B8A30CA706F43AD8DB330039DA8D646C8432F728868786215DD96917B7FEE0075FC1D2D5FF5D54E192F6567C6AC372DC70CB9D906415AD73AFC6C33FF92CEEFBBF4FE3CBFFE36FF0E8AFB6614673196A6A3D905979F102375E78E609A1BC65D397C56DB7ACFF3A5ADAAE10CA5C99659E4AD4D7D8F0F0432FE2ED936154D794E92F547989840573CB5156E6128BF77EE7DF889912D0C207E8867254D5B6E364DF4E3CB4E9111CEC9D107B2C070E8F6211151F250554DF95686C6AC4F7BE7B370647F4203EF4EB376173B8758A0B8C616050A7BBBFFFC44AFCE8475F43F7A163F8E34B47740BB87016773661E7CE63181B8F636EAB93283C86796D2AF6EDFAADA0F72D8F77E3AE6FDE848D9F7F10D59442D562C7B5D75D01A5B69C9948C3197A13B8EB9C76090F3FFE148E1F7E160FFD6A371AEB2CD47DDD3875260439E943EBAC3AD4362E12157AB0673BA4B56BD7A2BDBD1D11A2711E41626497CB05A7D3498DF3345A5A5A5057570707756198DABBB4B454906C6D6D2DF1C41350ABAAAA70FCF87178BD5E62609B18E3E3E3C26C7ED2599981474646A0D29B1022AA67A0A1A1214C4C4C406E6A6A12077893999737D98AC9493D681E8F47ECC7E8B5E2F5D1D15104020144A37AB0A5C6C6C6F42BC366F20DC5C4422F1503991E96ABAFBE5A98525F5F4FF4B505F3E6CDC3BA75EBC46D567A9D1890DD6A6D6DC5FDF7DF2F62D0D6D6262EE542524F9D3A2590DF7AEB2D81C8CA6C3EFB5C5E5E2ECC65CBF89B2FEAE8E810A0EC0ABB2673B03868867074C523CA6F2301C94400EC2F2BB3F90D0D0DE2975F6B3E23190A86B00B7C1B9B57535303BFDF2F6EE2EFC1C14101C8D961B1DBED9056AE5C89E6E66671805D615446E7F43DF6D863A8AEAEC6FCF9F3451CD82256660B3866BCAF7216586160600025F4A4B17F7CCBC99327C59CD3CC7132D2CA009C72AE1B9ECB9C670E082F720DB0125B63A4965D64AB588C14F3057CA9A883EC1814CA339BCE31307CE64B4C75B07EFD7AA13877EE5CDC7BEFBD22CF1C69EE05CE1003B2A9ECF3238F3C028ED992254B44D532B8CABEB1F9070F1EC4D8D818162C58206EE1FE6045369F2F603759F822A394795D361AC4480DDFC4E8BCC6B7732CF8128E8B01C08A7C3B5F24AD5EBD5A14526565257A7B7B4D796677F8B66CE194F3057C86132075A14B6CFC2B1EC7F9C8E7F1613D88D9CA25B7F78BDFF22A0B3DF51694B9EDE87BA01D81FD994C1113601227840E83286F40EF83E8F5BD44EB4A5AB9827E4B6DD444BBCA111E7065DDAD89114710BBF096CECAAAEC81635727CAA4F2B4726595155A4C816291CC794709ECA8860BCD7A51F13F77B215EE500BC23BE62039562A94599C762BA551CEF35F07A9C90088920C39218F96C3F7CC2C044E3A504196D814AA01AB346530D5EC8FC48403D15332FA1E5650553380C80891AC5D9E124071A21E0E1A6990908A44584164D089528F82B097FA232823EC57F2944318C80760890789A1A30A952950D31146349644685C12EBB90045EDF39DA09BA3D4FBD593987FC749B8670760AB88E49D9BD2C14838097B5504AEC6205A3F761CD6461F9492D0B903C4A21A228928BCC331943685E0B9FE18929563D01C41330097671C13790051722118D65FA0517AF6E5F200EC6B7BE1771C875FEECB00706D87319C07928869902C09A1EC1D8961842C19D7C6105AD98338BDD402801B42229C08BCA2BE4D00090DFE6024AD3C36A2D39DF59939E257E84EB79DE5F3D22A20693E208E111D6634094BE9A241B47EFA30C6FD61930B13FF31C3CC07AC6C4305ACF09049D63480B32188E62B0250ED49E2449D09C2C12426EA87A11CADC44E1CD62DE09B5538459B660B7301734265750634394AAFD7AE5A48B24D6442C480CDCE5516D1262E604E60618E60AE60CE60EE600E396B10990B9813981B9823982B9833983B4C412C26CC0561E2044D751247D41157941267D8F2B350483CCD31B240467CD885634F97C37FC48188D756388DB9C21D58313F445C10C5D09B76780F3AC8124BC18BF262C03DCFBDCF1CC05CC09CC0DC306521A5D346BD6E6DF453EF9F220E88438AAB8213A6923400F778B2D2473DDF4FBD9F240E20A6262E604E382B00F7B6E688A06EED20F57C84DA577F58980B98137285DBDEE85C01C015155DD94BBD6E853C9CF1D765510527E42A337770FB330DC8465B1A3D3E96EA7DE600E602E604334030ADFC17C007858403CE313B273EC8154E75A4D48BC8DA83693E104F9B0B4D42B9504B1B221E946AAA93EB8E4376C660ED1C47B4C7A3BB7036B3B9BCB942B9C8B84E38D506BDA9670B123716F706973757E86856534D9C0D805B9ABB72FE1D03A237B8BCB9420D39610030FB2A8A243890694C30919D7F65D1D2910197682CEE0D2E6F51A1EE48C605A66EB7D32608943990698C9988C984F92016B58AAEE4C6E2DEE0F2D62BF4B40EC0BCAF5813827DE93D86933890698C9988C9A4381FA400B8F60D611FFBBB55C1814C63C598C85489464A0458AF9DD8B7511068210E2C086080F0A311DE3183A8DB9DC7BED992CD07A212B9A2F8B98A6C6B8375BC165AD039A532F3410883D4D292990F249FCDF4681406B868F9407CC89EF4A3594CC218C22415B1890F58A2D7F742F556112F38A96CA7CA3D57A02662B10B6FE95928B9BD1F0E9782AAB90924465C50122AB468B1A78C981B1632DD8918023A009343799505D5333494CE0A2131AA5B9108A9454154A2A110067480DA6B82A8A2FAAF2090E6761965B343089D71201156100F16EFF83440DB07C342D9E8F5FA3609D50B22880C3AC9150561BF521440C097B9ED70A9368486F5760E06A97DA99D5B56446177C8A85E3859B09DBDFB5369EC7BA07D0A42098B679EA92D922214C99210AF56FF174A7580C0FEDA822632A5854349A2B421381B830853DB3B4A41BC18250EE10E2ED563E0A051B068C8F7D0B884D15E2BA4AA006CEEB850F6A6DE4FFFAB670160E12CC4830ABC47AC98B4F910D6424299DB9FBB580090F7A2BA8ABD4A5C0F090219EFB321E21A872F38A957AF011015E5CC0096A2205C999CD2D1BE04029ED3486C9DA51795E86952E31E3758A698305730673077B05C103E901A1B1B316FDE3CB85C2EBC1349177A4B4B8B00999898402814423C1ECF3B2CCB3254955E284982DFEF17E7D200168B4500ECDEBD1B2B56AC280AB067CF1EAC5EBD5A7C9B00344DC3F6EDDB71E8D021F1BD68D1A23C80BD7BF7A6F75B5B5BCD2E30C095575E29E60B162C10E8BC96CE0099DDDEDE2EE6CB962DC3F0F0702E800EB274E952EAC62092C9A409C010B68CF77808B7325BE6C385940BAD4D9BD62F248094FA2FA583962DFC9DBB6602E03D91E7EE3DA2267858ADD6F430BEF7EFDF2F8A49511473161445C58E1D3BD2795EB6741985D51CB4EEEEEEF4FEDCB9ED66009BCD866BAEB946CCD7AE5D9B4E53B6187572D555572110983003C4E309EA83492C5EBC045EAF57D48539B51C036021D5C1D8D818B172D20CB067CFEEF3CE00F78E68E7E908118A3950F539869C598129F72FAA4A7C67A29EAFCFB9FBEFBE0BD38FC1F9FA7CA90EFE2AEB40BAF517BFCF5BBCF997FBE0FFCED74C6BEEFF792FB67C7CF145E8C2BB0FA072C0CE550A9D957EBC5BFB0B8FC1F483C81556480A5562418042E5592C33974AB9B048BFB9ED75244A65443CAA58B0F9E2B0FB92A6433105085A80784D10725558AC2547EC50879C5059D93FD306DF4C8BD8F0BC1D03DE8E98402C09C049BF4152981CE319E0A2634E1A2ADFCCCA434BF40D3A46562408206AB2C2005113FAB735A9AFA9E7E32F2B58520086A8ECB3309B6E365CE0B57315957D8D9F88420EE8D025A3712443498CB8F503CE883E58A28E28E22E1D5C9D54610D597517D8671E22E2B432EA96304C83A5DA4F7C4183415879B22AA407118E0C8021412B9D2D91D05F2D91053A40D096DAF417261ED5088EB89D32C937B372C8AE038CA4DC704434B8C96CBED970210D70AEC226F3C8B3C010BE897D66B347526B55F45D9D8A415117B2010C5F0D0556AE3C57806C10F639378DDC13D154FB4D5989D94A86180D35A9B78CDE0B6C016FE49667AE6477A323D58D71EA466EAE73CE4254D690202059D1BF93F49BA43575EFF013E78A019CCC5F7AF729ED12C025804B00170840C5E57FE92E5C02B8047009E00201A8DA15DA5FB80B97002E015C02B8400097E4925C924B628834ABD6CC291B06EF327D6FAABDA7A0E227D72FC3CF36EFC9076059DEE911BFAFF7F80A2A67EFCBB98BFCBB78F1ACA24AB9FB72EE22A3B269D987A6DA57CA4B2434D4DA31383886F7BF6F01BA7BCEA4904362FDCC6078CA7D95D10D5F172FCE986CAC9D6D5F094F46D207F916BED1F8E679F677A17D530A0ADD7AB67D3977D398739E0B29E7EECBC5F2BC6FDF311493ECFDBF823A908D88E6469DBFF996A9F63B9EFD2264FE57287086CF67DB1731305A383BCF7C7BFC9F6F44B17D035892E5469C4D648B8AA4CB09F8FCF97BE9490B01398A205CBD06F2CD1FA0902B795B8A24B921D75503F777419ADB0C6DFBEEBC43522C0EF4F6411B0F1406D05415928BBEBA8F42EB3B91778815B5C04441E32475F1B548EE3F84772A0A86A3988EC8D3D29E0A406EAC13E93BAB0B1CC442CA58FFB7488E5981A1FEF307E0884BE37E4887F6414B26A70438A74A14565DF51EF19BDCFE8ABEE0A04EB43440E5224A0E0CE72B2C5B84E49EFD9985B619C0C46466FF8B9F02E6CEA2344EE697A7FCBD6F000FFE0BA49EDDD00EE931D0BADF80F6E65B19D3092C49455738CC07E9602F35CE89B1A22E25F71D3062D080E908D58186F319724D79CEDA34451201D2DE1992244999204A024A17C633BEB3E7D9FB7F1E0B8ADD5668CFB8F3CF13834216148B815A68B1104831C9B3A090AF85F62E580CA62D264ED48AFC66977DAEADE7668356FCF4B9592065942F40FF5D6C223CFBF18F7FFC8E94EFBCF3CE4C25D29C80F45F4372BFB3C5B8F3C25A50ECD6626B7F1E0B726F2C1697FF9A184C158F0B66C1B4E59CBA91094B9B0E1FA4F9AFC06929D702A9C06FA133178F4858F80E35CB68CC341E16DF3B0440D6CB8489F3502EC94CE5E9C6E012C025800B029029E592E900CC988E058BA7E7C25F011FA8D9EB4DE760C9498FF95BCD3D305542FA0BACA9850ECE2CB0B6AF08A85AECB63959F367A7B06ACA52FE188DDEB3C4644A807B707629EAC2B3E7A05C1460DF392A1704E83F0FE53C80DC22393F80BF5C3E387DFA34EAEBEB31303020466D6D2D24494ACF8DBD3367CE0805FEE5EFBABA3AB1A7AC5BB70E6EB73B7DA0B7B717DDDDDDD0344D00B13CF9E493E23B100808C51B6EB841CCF97269D7AE5D4281D158F877F9F2E5D8B3678F38C072E38D37E2F5D75F17202B56AC489BCF6B122F1A1F850EE4AE31288F86860631A453A74E8949B1032C6C25AFF1D9C6C646B1C6730656AEBCF24AE1CFEEDDBBF1C20B2F88390F5632E270E8D02101F6918F7C44EC95949488B988C1ABAFBE2A02C80756AD5A955634E67C13076EF5EAD585D3C88719A4D881D75E7B0D975D7699003A79F2A47081AD4ACF8F1F3F8EE6E6E6A2079A9A9AC49C078B31E7751E0ADF5C5656963E70E0C0016191216CE1A38F3E2AE6E3E3E302F4D65B6F15F313274E407AE9A59784025BC1C2A8975F7E395E79E5157180E5A31FFD285E7EF96501B666CD9A3438AFA5EBA0D881DC350635DC6E696981D4DFDF2F26C50EB0B095BCC6C358E339032B5C0C7EBF5F1CFADDEF7E277CE3C1DF461DF4F4F408C58F7FFCE3628F7B87E72206DBB76F17133EC04565281A73B690E372D5555715AF0306297660C78E1D58BB76AD0032DC65ABD2F3F9AD9F85CF3F88B2D21A54945763CC37222C30E6D97B2CB5D5D5D4B15554BD23181C1E8672D5EA4FC01F984C1F98D93C039D0BE7434B4A4824B91064BC77DDD56C2C4AA907864747F1F2CE1761B395A2AEA6064A95E7325CBE6A65D103D55535F8C38B4F8AEFC9601047FA7AC44563BE21B126D557DE221666B7768A5FE340B1B5F2B27A54565463D43B8CB1F1339016CCFABC98143BC032A77531EA6BAB291B3554F243A98AADC1EBDD07A15CBBE693B05A4AB170DE22ACA1BE70D85CE48A0BCB972E4434A22249B198DDDA4A011BC5B63F3D2BCE06436131AFF010015F7DD9FFA6C85662606804878F768BDB64594ECF1BEA6A84F2A1237B0AA6598984CBE1B07B84028BD73788D1B181F49CF758995D9BD93C575864B795A4E74A4BC3753879FAADA2074ED05E85A781ACD4597BEEAC59C4568BA125A003BCFF9A3BE1F34D163D9048CAF8DB0F5F4FC525A3CC5D8AD35440CF6E7B8A2E294373133D2C5565EFC1F5D75D5EF44003F1E1AF1F7F14768B87087512077A77898B46BC67C45ABA0E16CC59A93352EA40B1B5724F23EAAB1B30307206DEB193903A667F494C8A1D6059386F151A1B6AD1D6568FA347F5DAE0F94B2FED85F2C1EB3E07BBB50C4B3B97E1FAF7AE83D35E4A1C5982B5572C4324A4209690B060DE5C7A0306F0E433BFA53AF160726252CCABAB8880AFBFE2FF1051D6132B9F41CFC19DE23699DE5463CE71387D6610FBDE7CB5701D0427CBE07294A3E7C06B626168E41406691873270593F72ACA9BA8B0E689EEB4D9DDE9B9B47EBD6642DCB46983E97B033699F73764ED6FDCA8036CDE9C59D334C94C59305FA049A9FDF5EB05808C69CAB40154E1E2A6A94CCE55D12EAC05EF3E809AE7618ECF52CE8226FDF5C720C74514DBA742C6C60B66C1FA298F4CBDAB6E3CEB1D539F90B42DE61BB66E35F7FFD64D5B4DDF9BB6667D2FDE980A624F86107A369B01366FEA310318673BF58BDFFD3A90D66B5BB0193D450F6877779915527CB0BE93C2BBF8627061FA9578D3869BD0B6F9A6F4C2B7BBCCFD7F77570E47A6F7F56E78F75DF8F3D741AEA4EB824B79F10588418A0F3ACF5DA3D3DCBDC4078BCFEFCAC5EE9C18AC37E779539EC606F3D7A6CC898D06C0E60C1D209F53CD852569A966C20522D50B00B06983FE20A68694325ACA333EDB2529159BE72F0A17A629796FA3969BB6BCC44A17990B173E06D2D42E8B721192AAE50BC507EB8B9F583FF502F1C1C6A9AFD838F582A46D31236EBDC97CFCA6ADE6EF0D598CC16FA31EC49E0C21F4E402E4F0EDE614C0FA140B5E0475C03E6D3631E1DDA6035DF8B6E95BEB4AEDB30FEEC517810BD38FC14D376D40DB4D99347EDB1C020EC245EEC2B401246DFD16AACF4CBD4A5DE6BC777DDB4C085D77A79EB64EBD172E1023199D619E0AE9CCE9FFDC7D55D891251B5BCD075A73FADF6D3ECE69EE425543A9F82DAB2A4169B973CAC167B275440C22A1047E7EF57D48269202B4E16A1B6ADE6381AD424E7FF360E1337C96755864E380776F226DD5487714636F26E06A91D2DF3C0CE1B306A000A8ACB565D228CB88F9251A49F80F6B59DF92981B62E848EC179BCAB7B142324EA8941BFE35444EBD1EC69EBB5DC2E4710D116F52B7A0AC5D41E098867828695292F39E1D88337C9675D22EA87699CCD3CD2DA434950817B2FD9794FC4353B95034068642AE68942C2D99E56AB118E4C6223B26568F644EE3B90A5BC4B76B4909F1B07E99627358100F02253329D7E3126D722C52E6263383D7F857B14970CF91C8E22412210DF257C6BE86B9EF2B11D5C52EB08F89883E782E6A22964C7FF3193ECB3AAC2BEE1A1D8C648244265ADC9A183CE7885BDC72FADB104347009C7E31828A2599FC552DB58AC1C2E92AEF50D2DF2C7C9675D2003687823B5EFC0A6445779E378D039CEBA1576219053AC3675947D44E5711E2EFFA9179BDEB3385CFE501B022F51D640A7B52D37DE67942D3DB3D17485987752665A7EAC48C9219682B6BC36CF76C58148B008C501A288CD876E336AC7B725D3E8030F933C08AAB5760EECCB902A4D1D508B7C50D9572E9B17A103A1A42E4AB116CFB5106443694ABEDD55875FF2A8C3E318AFA53F5E8ACE8449BBB0D6BEAD66075CD6AC84764449E8EC07D97DB14A374297B6C1ECC5C381397FFB7CBF1C4BD4FC0D9EFC4EADAD598E59E05EF012FFA7EDA87EAF757436D35F7BB841FE993ABEAAFC2A28A45585CB918D25109BFB8F717B8E79E7BF086F70D7CEF3BDFC3824F2CC060E3208E8C1FC178743C1D54015761AB40281142381146281EC2F215CB85F25D77DD8589D8046EFEE2CD08CD0AC1EFF50BA5326B19BC116F068011BD612F7C511F86C24362F3F4C469F4BCD18378228E25B125980C4DE274F0B4503294D3006C4E201610B74DC626F1FC8EE7B1FDA1EDF8E4F73F29F69ED9FC0C2CD75AE0ABF7E51592D2F56497C8AD4DB1897C1FDD7714CFDDFD1C56DDB90AF26C19C3CE614C382670F0BE83905A89CA4A27D305C645950E299B153F1C47F8A9306A3F578B91C6119CF09E10AE05EA0370DCE940E8891062EF8D0173732A918B62DB8A6D88FC2735CCDF506EE7C8180AE9B1E0E0F28D7C73CC4DCA4F915609DD7E5797B912D76D2390CF6F83364343341915D9E0AC187391B6CA94F2BF66FAC1C4895D5DFA061FD6527FC63C7DE65FCDCD34753B73AD2853B7F3D4ACCC75737ACA1353F0819FF8E00122D9231A947B14246A0AF3819CABCC7CC05DB86CE632D4CFA947C98A1254D4554049BD79B94C25672B730BAFAD5F8B25554BD059D58932B90C255A09DA2ADAD051DE217A2617C4C407358E1A71704DED1AB4296D70D29F32A1A043EA40B9AD1C16D9920762E203DE74A92EB494B46065F54A54582BE076B9E1501CA87654A3D4529A1744D540AAB7D4A342AA407349339A1C4D9857350F0DEE06383A1C68AC6C14DD5861AF8037E88512A7A0AA8954C0FF915EDB57ACB07AAD22804A4C41796939EACBEB71E4C811F4F7F763FE7BE6C3EBF322180B22940C890BE3017A693F48162851425B98803D62477D69BDB8B5CDD386843F8121DF10EC237654B457C0EEB4E374EC349211EA8BC824E022944E02482CD2F3ABD04B535F558F799E7998593A13B1680C074F1C84B5CE8A651B9761B76F3792E349D8349B0E90923C3EE02E1C8F8C2326C5D0F35C0F868787915895803FEA17CC1588078AF38140A48219898CA0EA4C15068707113816103C91AC212509882563F98564942783F0180D8FE2D0E421042D4148B51212369DF2D25C3890D1C954E26732ADCCA6FAE82F9A8822AEC5E1537C999B07326D9FDF0B59205A9058C043C341633C8B0FBACE950F7E48EB7D34A9A361A7EFCF1679DEABB014D311D34357727BBFF82DAFB2A0AADA8232B71D7D0FB423B0BF367D268C214CE20433863906D1EB7B4DCA15F4EB76DAA02852CE8D4ED850412C99CC00A8B2078E5DD4FF52795AB9B2CA0A8DFA42B1E402945048AAA9929B3300EE642BDCA1168477CC4172AC5428B338EDD464D67CDAD4416ACC2E482127E4D172F89E9985C049072AC8129B6285C52A9D7B1013130E444FC9E87B584155CD00222336D8EC5313B7E2443D1C34D220211589B082C8A013A51E0561AF05B1A08CB05FC9530E5159E601B0C4832A34E20999ECABE9A0E72D9644685C12EBB90045EDF39DA09BA349A8D593987FC749B8670760AB88E49D9BD2C14838097B5504AEC6205A3F761CD6461F9492D0B903C4A21A22D491DEE1184A9B42F05C7F0CC9CA316AB0A01980CB338E893C8028B9100C47C57C74240AB93C00FBDA5EF81DC7E197FB32005CDB610CE78124621A244B42287B476218214BC6B5318456F6209EF46500B83122F01240D00C90D0E00F46D2CA63233AA9589F99933E33ED7696A7A58DAC52E6F6E40E339A84A574D1205A3F7D18E3FEB0C98589FF9861B68095B9C7B9D7B385B9803981DB9BDB9CB9426427C51D690BF86656E63635011017302754565BD36BC9D1128476D542926D2213C202363B5759449BB8803981853982B9823983B98339E4AC41642E604E606E608E60AE60CE60EEC80B6221612E08132768F4ECF73D5C475C514A9C612B9C855CF134C7C80219F161178E3D5D0EFF1107225E5BF134660B7760C5FC10714114436FDAE13DE8204B2C052FCA8B01F73CF73E7300730173027343313159C0BD6E6DF453EF9F220E88438AAB8213A6924C25528F272B7DD4F3FDD4FB49E2006A14E202E684B302706F6B8E08EAD60E52CF47A87DF58785B980392157B8ED8DCE15005C51D195BDD4EB56C8C3197F5D16557042AE327307B73FD3403A88468F8FA57A9F3980B98039C10C104C2BB35CE47C504838E0061FA62D28C607B9C2A9D63C11131F88A7CD852658E129D8D2E983FCA054539D5C771CB233066BE738A23D1EDD85B399CDE5CD15CA45C675C2A936E84D3D5B90B8B1B837B8BCB94247B39A6AE26C00DCD2DC95F3EF1810BDC1E5CD156AC8090380D99709943990694C30919D7F65D1D2910197682CEE0D2E6F51A1EE48C605A66E665F2650E640A63166222613E68358D42ABA921B8B7B83CB5BAFD0D33A00F3BE624D08F6A5F7184EE240A63166222693E27C9002E0DA37847DECEF560507328D156322430480911201D66B27F66D14045A88030B021820FC688477CC20EA76E7B16FB664F381A844AEA8897AEAF16D6DB08ED7420B3AA754663E0861905A5ACA58C07CC0CF95949CBA1F2E623E101FB227FD68169330863049456CB890B6807B9C7B9D7B7EEA1B9D823B9843D25928B9BD1F0E9782AAB90924465C50122AB468B1A78C981B160114434007607228AFB2A07A8686D2592124469DD43C1624426A511095682884011DA0F69A20AAA8FE2B08A4B95D46D9EC1042671C488415C483C53B3E0DD0F6C1B050367ABDBE4D42F5820822834E724541D8AF140510F0656E3B5CAA0DA161BD9D83416A5F6AE7961551D81D32AA174E166C67EFFE541AFB1E689F8250C2E299676A8BA40845B224C4ABD5FF85521D20B0BFB6A0894C69E15092286D08CEC620C2D4F68E52102F468943B8834BF5183868142C1AF23D342E61B4D74A351F80CD1D17CADED4FBE97FF52C002C9C85785081F7881593361FC25A482873FB73170B00F29E8E6A22BF8584EB214120E37D36445CE3F00527F5EA3500C8A31480A528085726A774B42F8180E734125B67654A998981FB9CCB932BAC98707546230148473267A6CD07EAE7F1E1BCC5AE0FED012EBB0CB8ED3620420FC8638F013B77A2EBF1FCCB4C85DEF5601370FBEDC00D37E84A8383FAC61FFF487C5F89AEF037809FFF1C5DFF30980FD0F5297AE96EFE22F0A52F01CF3FAF2FEED963BEEE8BB47FEFBDE8DAFD1574FDB4592C0942E9FA21556259195051A12B5F771D2D76011FF800D0D9990178E0012A4F0F5052A25B9BB6E08E3BE81DB78BC3B55FFD2A6A66CE84AC2838D1D808EFA953A0EE028E1CC9007DFFFB540451E0EFBE03B9EBC3DDC0C183FA4653132A69ECBFE20AA8562B9A3B3AF4F5D6023CF9C61B22D83256AD029E79465FA4B9C566C3F2D75F179F31BE8565CD9A7C803FFC41644AC52DB700F3E6E98B7FFA93309B6F4EC4A9714E9CD0D7298579F20DCA485F1F01D8B2DE405A609F85DFD972F264E12AA21A51505303BCEF7DC073CF015EAF3E0201802C618BB063472646D9F2DDEF026FBE494DF0A10FE9295BB60CE725DDDD424FEEFA2D292E5C88F396961651DAFACBB469935E81E72A5FFE32F0E8A362AA57E2DF51902626009F0FF8F4A78B2BDE79A71EA3F1F1743F28EBB04E4CD6759761DB8C3EDD12EE012EED8F7E54EFCA1811E88205C00F7F086CDD8AAEBBA534A6D485AEBC8B44757281718D709A1F7A0878ED358878E5C8FF07D9D07680708BE2560000000049454E44AE426082;

   // Title screen logo data;
   ICON titleLogo 89504E470D0A1A0A0000000D494844520000003F0000000F080300000064FBE74000000042504C5445000000800080000024000048FFFFFF00006DCCFFFF00009199FFFF0000B666FFFF0000DA33FFFF4B5C9E0000FF00FFFF0000DB0000B700009200006E000049000025E505F6580000001674524E530000000000000000000000000000000000000000000021C80CD6000000DD4944415478018592DD968340088361ADD656C7FAD3BEFFAB6EC094A147774B9843FC0877CAF752D57FC0CFD742FC6F20CDE5D2B86CD6E6B30FC413680878226DD7B52E9BB5F9EC03F1045A029EC8B5BFA2DF8A4E08F1CF440672BBDFD06F452784F867220319C67170D93413802A8873BBAF870C647A3C26974D330128A495DB7D3D6520F33C52E638B266C4F3A793389165B953E638B216DCE74F2771226BDFA3F1D6E276ADC0D5AFB8AF8084DB5264EB3A34DEA66EB70A5CE0AA1590708B1FF919A5CFF3C2FD8184915794BECE0BF70712464A9496F3C2FD8184F905216923D97A4313010000000049454E44AE426082;
   // I lost The Game D:;


This was a project to port Supersonic Ball to the HP Prime in 2013 or so, but sadly I stopped working on it. Who knows? Maybe I'll revive it one day, but I thought I would improve the speed of the title screen. Basically, I used to redraw the spinning balls every frame and now they are pre-rendered in a GROB. Also, the logo resolution has been reduced to 4 times its original width to speed up the animation, but the quality loss is almost non-existent (other than the fact the wave animation is now in the opposite direction).

The frame rate went from about 12 FPS to 30.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

alexgt

I forgot how you did the title animation with the waves? I am interested in that. I am glad you got it working though ;)
  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

novenary


Dream of Omnimaga

Thanks guys :)

@alexgt I basically BLIT my GROB in small chunks via a for loop and using some variables I make the height change every loop iteration.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

alexgt

  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

Dream of Omnimaga

No problem. I was surprised by how fast it was, even before I speed it up. This is why I thought it was ironic that @Juju did not include the effect in his LOVE 2D remake of Supersonic Ball :P


Pre-rendering stuff on the HP Prime can do wonders, as long as you don't go overboard (especially if you use applications instead of programs)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

alexgt

  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

Dream of Omnimaga

Yeah I mean when your GROB's are so large that the game uses several MB of RAM and prevents application versions of it from running (eg the spreadsheet bug). 500x150 isn't that big, but 1920x1080 would be overkill (I think it's possible but glitches or errors will most likely occur)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

alexgt

  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

Dream of Omnimaga

Wait, then that would mean your GROB is 38.4 MB large? ??? Because that's 8000x2400 pixels and each pixel is 2 bytes large in GROB format. The calc doesn't even have this much RAM, so if you use such large GROB, then no wonder why your apps error out.

The HP Prime has 32 MB of RAM and half of it is used by the OS, so you only have 16 MB to work with, and even then you should not use it all, in case of HP Prime firmware bugs causing memory leaks.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

alexgt

No, I have never made a GROB that size xD I was just joking
  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

Dudeman313

  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


alexgt

  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

Dream of Omnimaga

Quote from: alexgt on February 09, 2016, 02:28:48 PM
No, I have never made a GROB that size xD I was just joking
Oh phew lol.
Quote from: Dudeman313 on February 09, 2016, 05:01:29 PM
This is a CE port waiting to happen.  :P
I don't know if even CE ASM/C would be capable of such speed, though. Perhaps in lower color bitrate it could, though. But yeah it would definitively not be by me unless Axe was ported to the CE

That said, that's if I was able to read Axe again, becuase I tried deciphering my SSB code earlier and could barely even figure out what each variable did. I should really have commented the code >.<
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Dudeman313

SSB?

I asked Runer112 about Axe on the CE, but it would need to be rewritten, and he also said if you had eZ80 knowledge, you wouldn't need Axe.
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Powered by EzPortal