Omnimaga

Calculator Community => Other Calculators => Topic started by: 3.1415926535 on August 13, 2009, 07:14:46 pm

Title: Awesome Omnimaga rickrolling program.
Post by: 3.1415926535 on August 13, 2009, 07:14:46 pm
i really want to learn how to make the omnimaga rick rollers of the future program as seen is the signature
Title: Re: Awesome Omnimaga rickrolling program.
Post by: cooliojazz on August 13, 2009, 08:51:22 pm
In mine? You want to know my trade secrets?!?!?!?!?!?!?!?!?!?


Well..., okay.

1. There is no rickrolling program as seen in my signature.  I really wish there was.  That would be awesome. :)
2. The REAL story behing the sig:
I started by making this program:
(http://www.survivingm-s.webs.com/omnimaga.gif)
then thought, it would be so cool if I could make a program that looks like, well, my current sig does.(I modeled after my intent) I tried many different methods, and got very anoyed that none of them worked, so I took a pic of the omnimaga part running, added the rick roll part to the image.  I then pulled that into GIMP 2 and made a gif that looked like above, but with the rick rolling part (see sig).
3. So there you go. Thats how I did it. If you so desire, ask and I will try again t figure out how to do that. (I think I know how, but sadly my cal got stolen today, and i hate using emulaters, so I can't test it right now)
Oh, and if you really like it, use it if you want, I don't care survivingm-s.webs.com/omnimagarick.gif (http://survivingm-s.webs.com/omnimagarick.gif)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: 3.1415926535 on August 13, 2009, 09:01:56 pm
nicee! i just wanna know how you made that awesome program :) i have to admit, it's pretty amazing
Title: Re: Awesome Omnimaga rickrolling program.
Post by: Geekboy1011 on August 15, 2009, 11:43:31 am
hmm maby when i get my calc from home ill make this just for fun cause i hate  the emulators as well lol optimizing is gonna be annoying as hell for me though oh well it looks like it is gonna be a fun mini project  :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: 3.1415926535 on August 15, 2009, 03:38:51 pm
yay thanks! haha i'm learning a lot from this site!
Title: Re: Awesome Omnimaga rickrolling program. (I'VE DONE IT)
Post by: Michael.3545 on June 29, 2010, 11:59:37 pm
I have done it.  It was actually much harder than I expected.  When my 48 by 64 sprite didn't work out, I decided to use the back buffer instead.  Then the last character dropping problem occured... GAH!

But it works now.  I got the speed as close as I could, and it runs in 6mhz mode.  However, if you press the [2ND] key, you can go into what I like to call "lobster mode". 

Quote from: DJ Omnimaga
Never before you will ever have seen lobsters swim this fast.

It removes the pause and switches to 15 mhz mode, so you can feel the Axe Power.


Here is the source and compiled program.  If only I could make screenshots...
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on June 30, 2010, 02:37:48 am
Lol epic thread bump XD but with epic program ;D

Nice work :D
Title: Re: Awesome Omnimaga rickrolling program.
Post by: Deep Toaster on June 30, 2010, 05:53:23 am
lol I didn't notice the post date either ... nice program, though (those are some speedy pies) :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: Michael.3545 on June 30, 2010, 11:56:14 am
Thanks!  I feel warm and fuzzy inside now.   ;D

Perhaps it is some sort of internal fungal growth undergoing a exothermic reaction?   :-\
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on June 30, 2010, 12:54:23 pm
o.O

Lol

That said it could maybe mean... that you almost won the game but still lost
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 16, 2010, 03:22:38 am
I think I may attempt a BASIC version just so I have something to refresh my BASIC a little since I haven't programmed in a while. I'll update you guys later on how this goes :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 19, 2010, 04:59:43 pm
Lol that would be nice XD

I think it would be possible, altough idk how fast it would be.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 19, 2010, 05:55:48 pm
Ya, it is indeed a harder task than I though haha. I'm still working on it.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: {AP} on July 19, 2010, 06:23:52 pm
The fastest I've managed is below.
I made a much smaller and more complicated one, but it was slower by a lot.
Also, because I'm cheating the bottom row isn't used. =P

Oh, and I don't have the calc cable so you gotta hand type it. (Also, I'm not sure how to easily make most of the original characters, so I just didn't. I'd have to grab the str that has all the special chars but the lack of a cable messed that up too.)
Code: [Select]
:1→A
:-1→B
:While getKey≠105
:If A=1
:"σm
:If A=2
:" mπ
:If A=3
:"  πi
:If A=4
:"   im
:If A=5
:"    ma
:If A=6
:"     ag
:If A=7
:"      ga
:Disp Ans
:If A=1 or A=7
:-B→B
:A+B→A
:End

Here's the smaller version:
Code: [Select]
:"σmπimaga→Str1
:1→A
:-1→B
:While getKey≠105
:sub(Str1,A,2
:If A>1
:Then
:For(X,1,A-1
:" "+Ans
:End
:End
:Disp Ans
:If A=1 or A=7
:-B→B
:A+B→A
:End
Title: Re: Awesome Omnimaga rickrolling program.
Post by: nemo on July 19, 2010, 06:44:05 pm
my own attempt:
Code: [Select]
1->A
Ans->B
For(C,0,7
Disp "
End
Repeat getKey=45
Output(8,A,sub("σmπimaga",A,2
Disp "
A+B->A
If A=1 or A=7
-B->B
End

runs pretty fast...
Title: Re: Awesome Omnimaga rickrolling program.
Post by: yunhua98 on July 19, 2010, 06:48:07 pm
We should make this the title screen of all the Omnimaga Joke programs. (e.g. greyscale Number Guessing Game, Quad Solver...)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: {AP} on July 19, 2010, 06:48:40 pm
Woah, nice. I wish I would've thought of abusing the function of Disp like that earlier. I had just thought about how to use it then I saw your post.

Awesome work.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: nemo on July 19, 2010, 06:51:38 pm
thanks. it's 85-ish bytes with the for( loop at the beginning, which isn't really necessary just makes it start off cleanly. without the for loop it's 73.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: {AP} on July 19, 2010, 06:52:20 pm
The for( at the beginning also has a cool effect if your screen is already full of stuff before you run the program. =P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 19, 2010, 06:54:45 pm
Nice stuff guys ^^

As for the way Disp was used, I kinda used it in illusiat 13 in the menu and some animated sequences in Illusiat 2004 and ROL2. It can be pretty useful sometimes
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 19, 2010, 07:18:45 pm
I've used Disp like that before. Very useful at times. Nice work on the programs, both of you!
Title: Re: Awesome Omnimaga rickrolling program.
Post by: {AP} on July 19, 2010, 07:22:02 pm
Haha, mine wasn't much. I just threw that down in like 2-3 minutes and took the lazy way around it.
Nemo managed to not only make a smaller and faster version, but he also got the 8th row in.

Oh well, goes to show how rusty I am. =P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 19, 2010, 07:33:36 pm
Btw screenie of Nemo's program
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 19, 2010, 07:35:47 pm
Cool. Having fun with Wabbit speed settings again, DJ? :P
Looks awesome though.
Btw, one thing I never figured out about the language apps was why most of them would enable you to type Greek letters...
Title: Re: Awesome Omnimaga rickrolling program.
Post by: {AP} on July 19, 2010, 07:36:03 pm
How do you get to that screen where you typed in 'omnimaga'? o.o
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 19, 2010, 07:37:39 pm
Through the French language localization app. All of the localization apps have them, though, as above, I don't know why most of them include the Greek characters.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 20, 2010, 01:33:56 am
Cool. Having fun with Wabbit speed settings again, DJ? :P
Yup :P, I was testing the new 1% speed setting :P (it used to be 5%). It didn't make much difference, though, because key detection and menu display were too slow for me :P
How do you get to that screen where you typed in 'omnimaga'? o.o
All language apps includes those. I wonder why TI didn't make them available for english users too, through an app or program, but again a 16 KB app just to access this option may not be justified.

Also, the german app changes the look of one of the TI font to something else. I forgot which char it changed, but it changed to the weird B char only used in German.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 20, 2010, 06:20:08 pm
So I got my program that duplicates Coolio's signature image but the scrolling part is a bit slow so I'm working on tweaking that and such :)

Edit:
...So my calculator reset because the batteries were low and it didn't even give me a warning...DANG IT!
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 20, 2010, 06:23:27 pm
Aaaah ok ^^ good luck with it ^^

It would be nice to also have the Rickrollers Of Tomorrow part
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 20, 2010, 06:31:45 pm
Ya, except now I have to recreate the program because my calculator decided to randomly tell me my batteries were low and RAM reset without warning at all...crap.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 20, 2010, 06:32:55 pm
ouch x.x

Normally when that happens, my calc warns long enough in advance. (normally a few days) x.x
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 20, 2010, 06:33:45 pm
Ya, I know. I have no idea why it waited so long. :(

Edit:
Got the file recreated (and somewhat optimized). Still working on it a little but here is a screenshot of what I have so far.

Screenshot is of the same thing, the second one is just a lower frame rate to help accommodate some browsers.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: Deep Toaster on July 21, 2010, 03:28:35 am
My calculator almost never gives me the batteries low warning except when the batteries are less than five seconds from being dead (I've already lost a lot of code because of this :(). I think the battery test doesn't work well with rechargeable batteries.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 04:29:19 am
Mhmm rechargeable batteries, that might explain why :S.

TI should have added a mode users can choose to set the calc in rechargeable battery mode, so the message show up longer
Title: Re: Awesome Omnimaga rickrolling program.
Post by: Deep Toaster on July 21, 2010, 05:12:21 am
I don't think rechargeable batteries are even recommended for things like graphing calculators :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 05:38:35 am
Mine weren't rechargeable though ??? Oh well though, got the program back :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 11:34:47 am
Were they dollar store batteries or something? I know those sometimes suddently die. In my case, once, the message never actually got to show up. My calc waited until I exit programs to shut down, though, so I was safe.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: ztrumpet on July 21, 2010, 12:01:12 pm
That's a neat program!  Too bad meishe, good luck! ;D
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 04:01:54 pm
That could be, it wasn't one of the more famous battery brands so they could have been cheep ones. I'm still optimizing the code, or attempting to, so I can probably post it later today sometime.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 05:44:13 pm
Good luck :) I hope it won't happen again :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: yunhua98 on July 21, 2010, 05:48:18 pm
Ever since the first time I lost a program (Actually it was all of them, since I didn't know about archiving yet.) to a battery death, I've been replacing my batteries once every week.  :P  I have to buy the 144 packs to keep from getting batteries every month.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 21, 2010, 05:48:38 pm
Indeed. Sudden RAM clears can be very devastating.
I also wish you good luck! :)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 05:54:10 pm
Ever since the first time I lost a program (Actually it was all of them, since I didn't know about archiving yet.) to a battery death, I've been replacing my batteries once every week.  :P  I have to buy the 144 packs to keep from getting batteries every month.
Can you tell me where do you get those? O.o

The largest I ever seen was at the Zellers store close to my home and it was 64, if I remember. I also remember a store near the Staples store where they sold packs of 12 cheap AAA batteries for $1.49, but the expiration date was close and at least one per pack wasn't working.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 05:55:45 pm
Thanks :)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: yunhua98 on July 21, 2010, 05:57:12 pm
Well, I get mine at Costco.  (Do they have those in Canada?)  But here's a link online (for Staples): http://www.staples.com/Duracell-AAA-Alkaline-Batteries-144-Pack/product_751596
btw, this isn't advertising, is it?

EDIT:  It lasts for a little under half a year, I don't like running out of batteries.  :P.  (I have a lesser used TI-84+, for those who were wondering about my math.  :P)

EDIT:  wow, the batteries I linked to sure are expensive...  The packs where I get them are like 70 bucks.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 05:59:04 pm
Oh I was asking him because he lives in the same city as me (and close to Quebec city), just like to the extreme opposite side of it.

As for Costco there's one in Quebec city, if I remember, but I don't have a car :( (idk if I want to spend $9.60 in a 3 hour city bus ride in total just to grab a pack of 144 batteries)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: yunhua98 on July 21, 2010, 06:03:29 pm
Oh I was asking him because he lives in the same city as me (and close to Quebec city), just like to the extreme opposite side of it.

Am I missing something, are you talking about me, or someone else?
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 06:21:59 pm
Oh I mean I was asking Juju in particular where he got his set of 144 batteries, because he most likely picked it at a store I have access to.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 08:43:22 pm
So I just realized my Omni chain thing does something that isn't right so now I'm working on fixing it.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 08:48:30 pm
Aaah ok, good luck on fixing it x.x

Btw how big is it so far?
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 08:52:41 pm
About 611 bytes. The method I used is probably not the best but the only one I can think of right now.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 09:05:39 pm
Aaah ok. Btw do you use Disp? I am not sure if it would be faster but my concern was about the Coders Of Tomorrow text keeping jumping due to having to be updated every frame due to Disp scrolling it up
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 09:24:02 pm
No, Disp doesn't work because even though you update it every time the left over words will show in the blank spots for a second. You could eliminate that with ClrHome but then you get rid of the chain effect (for the record that is all theory, I haven't actually tested it). I used Output( which is why my code is a bit messy :P

By the way, I fixed the issue :)

Edit:
Ok, so I've basically gotten to the point where in my current state of mind I can't optimize this anymore.

So for those who want to see the code I will provide it.

Code: (Rick Roller's of Tomorrow) [Select]
ClrHome
"σmπimαgα→Str1 //The "i" is the imaginary number "i"
Output(1,9,"The
Output(3,9,"Rick
Output(4,9,"Roller's
Output(6,9,"Of
Output(8,9,"Tomorrow
1→A
2→B
3→C
4→D
5→E
6→F
7→G
6→H
1→I
Ans→J
Ans→K
Ans→L
Ans→M
Ans→N
-Ans→O
Ans→P
Repeat getKey=45
Output(1,A,sub(Str1,A,2
Output(1,B,sub(Str1,B,2
Output(1,C,sub(Str1,C,2
Output(1,D,sub(Str1,D,2
Output(1,E,sub(Str1,E,2
Output(1,F,sub(Str1,F,2
Output(1,G,sub(Str1,G,2
Output(1,H,sub(Str1,H,2
A+I→A
I-2(Ans=7)+2(Ans=1→I
B+J→B
J-2(Ans=7)+2(Ans=1→J
C+K→C
K-2(Ans=7)+2(Ans=1→K
D+L→D
L-2(Ans=7)+2(Ans=1→L
E+M→E
M-2(Ans=7)+2(Ans=1→M
F+N→F
N-2(Ans=7)+2(Ans=1→N
G+O→G
O-2(Ans=7)+2(Ans=1→O
H+P→H
P-2(Ans=7)+2(Ans=1→P
Output(1,1,"________ //8 "_"
Output(2,1,"________
Output(3,1,"________
Output(4,1,"________
Output(5,1,"________
Output(6,1,"________
Output(7,1,"________
Output(8,1,"________
End
ClrHome
Output(1,1,"

If something in the code doesn't make sense just tell me and I'll look it over (I typed it by hand so there may be errors, though there shouldn't be).

I also am providing the file too.

P.S. For the screenshots RRoT4.gif is at a lower frame rate to help accommodate some browsers.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 09:55:08 pm
Aaah ok, and good to hear :)

EDIT: OOh nice :D

One thing I wonder is if it would be possible to not refresh the Omnimaga area every frame?
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 21, 2010, 09:57:00 pm
Looks cool! Too bad it's kinda slow...
But it works, so great job! :D
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 09:58:38 pm
Ya, it isn't as fast as nemo's chain effect but it's a hard thing to do while leaving the right half the screen alone. I also think it runs a bit faster on the calculator than in WabbitEmu.

@DJ
Not really because without erasing each time then you are left with the trail and after a full rotation it will just have eight lines of Omnimaga on it.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 21, 2010, 10:02:32 pm
And it looks too flashy to do
Code: [Select]
Disp "
Output(8,1,Ans
or something to that effect, where you output immediately after the Disp?
But great program, at any rate. :)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 10:03:58 pm
Are you talking about kind of what nemo did in his (http://ourl.ca/3595/103209)?
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 21, 2010, 10:06:00 pm
Barely. I'm more talking about putting the Output( immediately after the Disp to reduce any flashing.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 10:09:42 pm
Oh ok, sorry, remembered his code wrong. The problem with using Disp is that you're shifting the whole screen so you would have to update the "The Rick Roller's Of Tomorrow" section each time, and even then you'd still have some left over stuff in the empty spaces for a second and the only way to really clear that is either add more Output('s with spaces to cover those gaps and then that part becomes flickery.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 21, 2010, 10:26:26 pm
Yeah, that way also the RIck Roller's Of Tomorrow text would do some sort of earthquake effect, which wouldn't look too good with a lot of text
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 21, 2010, 10:28:51 pm
Ya, I just tested it sort of (I just modified nemo's code) and it doesn't look good at all.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 22, 2010, 08:21:12 am
Oh, too bad :(
The other code looks good though, as I've already said. :)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 22, 2010, 08:29:59 am
Thank you. Has anyone been able to spot any optimizations at all?
Title: Re: Awesome Omnimaga rickrolling program.
Post by: Iambian on July 22, 2010, 05:00:19 pm
Here's my version. It's lightning-fast and it's only 291 bytes on-calc.

Spoiler For Coder's Comments:
I so horribly cheated. It's an ASM program being called by a BASIC program. Here's the code for the ASM program:
Code: [Select]
;Test condition
;Rickrollers of tomorrow.
#include "ti83plus.inc"
.org $9D93
.db $BB,$6D
;Character mappings:
;  o   m   n   i   m   a   g   a
; $C7 $6D $C4 $D7 $6D $BB $67 $BB
 ld hl,0
 ld (currow),hl
 ld hl,RightString
 bcall(_PutS)
 ld a,'w'
 bcall(_PutMap)
 ld c,0    ;counter for the scrolling text
MainLoop:
 bcall(_getcsc)
 or a
 jr nz,Exiter
 ld hl,0
 ld (currow),hl
 call ASubroutine
; push bc
;  ld bc,0
;  dec bc
;  ld a,b
;  or c
;  jr nz,$-3
; pop bc
 jr MainLoop
Exiter:
 bcall(_ClrLCDFull)
 ld hl,0
 ld (currow),hl
 ret
ASubroutine:  ;writes the text out onto the screen
;curRow=y curCol=x
 ld b,8  ;loop counter. Drawing down like that.
 ld e,c
SubLoop:
 ld hl,PositionTable
 ld d,0
 add hl,de
 ld a,(hl)
 push af
  or a
  jr z,$+3
  dec a
  ld (curCol),a  ;position from left edge
 pop af
 push de
  ld hl,TheOmnimaga
  ld e,a
  add hl,de
 pop de
 or a
 jr z,$+9  ;skip over leading space write if on left edge
 push af
  ld a,' '
  bcall(_PutC)
 pop af
 push af
  ld a,(hl)
  bcall(_PutC)
  inc hl
  ld a,(hl)
  bcall(_PutC)
 pop af
 cp 6
 jr z,$+7  ;skip over trailing space write if at middle of screen
 ld a,' '
 bcall(_PutC)
 ld hl,curRow
 inc (hl)
 inc e
 djnz SubLoop
 inc c
 ld a,c
 cp 12
 ret nz
 ld c,0
 ret
 
 
 
 
 









RightString:
.db "11      The     "
.db " 22             "
.db "  33    Rick    "
.db "   44   Roller",$27,"s"
.db "    55          "
.db "     66 Of      "
.db "      77        "
.db "     88 Tomorro",0


TheOmnimaga:
.db $C7,$6D,$C4,$D7,$6D,$BB,$67,$BB  ;04
PositionTable: ;13 width, pad 8 more.
.db 0,1,2,3,4,5,6,5,4,3,2,1,0,1,2,3,4,5,6,5,4,3


.end
.end
Title: Re: Awesome Omnimaga rickrolling program.
Post by: calcdude84se on July 22, 2010, 05:03:27 pm
lol Iambian :P IMO it would've been worse if you had used Celtic III ;D
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 22, 2010, 05:11:27 pm
Here's my version. It's lightning-fast and it's only 291 bytes on-calc.

Spoiler For Coder's Comments:
I so horribly cheated. It's an ASM program being called by a BASIC program. Here's the code for the ASM program:
Code: [Select]
;Test condition
;Rickrollers of tomorrow.
#include "ti83plus.inc"
.org $9D93
.db $BB,$6D
;Character mappings:
;  o   m   n   i   m   a   g   a
; $C7 $6D $C4 $D7 $6D $BB $67 $BB
 ld hl,0
 ld (currow),hl
 ld hl,RightString
 bcall(_PutS)
 ld a,'w'
 bcall(_PutMap)
 ld c,0    ;counter for the scrolling text
MainLoop:
 bcall(_getcsc)
 or a
 jr nz,Exiter
 ld hl,0
 ld (currow),hl
 call ASubroutine
; push bc
;  ld bc,0
;  dec bc
;  ld a,b
;  or c
;  jr nz,$-3
; pop bc
 jr MainLoop
Exiter:
 bcall(_ClrLCDFull)
 ld hl,0
 ld (currow),hl
 ret
ASubroutine:  ;writes the text out onto the screen
;curRow=y curCol=x
 ld b,8  ;loop counter. Drawing down like that.
 ld e,c
SubLoop:
 ld hl,PositionTable
 ld d,0
 add hl,de
 ld a,(hl)
 push af
  or a
  jr z,$+3
  dec a
  ld (curCol),a  ;position from left edge
 pop af
 push de
  ld hl,TheOmnimaga
  ld e,a
  add hl,de
 pop de
 or a
 jr z,$+9  ;skip over leading space write if on left edge
 push af
  ld a,' '
  bcall(_PutC)
 pop af
 push af
  ld a,(hl)
  bcall(_PutC)
  inc hl
  ld a,(hl)
  bcall(_PutC)
 pop af
 cp 6
 jr z,$+7  ;skip over trailing space write if at middle of screen
 ld a,' '
 bcall(_PutC)
 ld hl,curRow
 inc (hl)
 inc e
 djnz SubLoop
 inc c
 ld a,c
 cp 12
 ret nz
 ld c,0
 ret
 
 
 
 
 









RightString:
.db "11      The     "
.db " 22             "
.db "  33    Rick    "
.db "   44   Roller",$27,"s"
.db "    55          "
.db "     66 Of      "
.db "      77        "
.db "     88 Tomorro",0


TheOmnimaga:
.db $C7,$6D,$C4,$D7,$6D,$BB,$67,$BB  ;04
PositionTable: ;13 width, pad 8 more.
.db 0,1,2,3,4,5,6,5,4,3,2,1,0,1,2,3,4,5,6,5,4,3


.end
.end


For a second there I thought I had horribly been outdone :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: chrisf1337 on July 22, 2010, 09:59:37 pm
That's some rickroll win there.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: ztrumpet on July 23, 2010, 12:22:21 pm
That's awesome!  Great job Iambian!  * ZTrumpet hands Iambian a cherry. ;D
Title: Re: Awesome Omnimaga rickrolling program.
Post by: yunhua98 on July 26, 2010, 10:51:03 am
I have a version at 240 bytes on calc, flickers a bit, see the source code for why:

Quote from: BASIC Code
:ClrHome
:1→A
:1→B
:For(θ,1,8
:Disp "
:End
:While 1
:"σmπimαgα→Str1
:Output(8,A,sub(Str1,A,2
:Output(1,9,"  
:Output(3,9,"    
:Output(4,9,"        
:Output(6,9,"  
:Output(8,9,"        
:Disp "
:Output(1,9,"The
:Output(3,9,"Rick
:Output(4,9,"Roller's
:Output(6,9,"of
:Output(8,9,"Tomorrow
:A+B→A
:If A=7 or A=1
:-B→B
:End
Generated by SourceCoder (http://sc.cemetech.net), © 2005-2010 Cemetech (http://www.cemetech.net)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 29, 2010, 04:57:21 pm
Nnice, kinda flickery but it's quite small and fast. Nice job :)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: yunhua98 on July 29, 2010, 06:02:48 pm
thanks, I tried replacing the "omnimaga" with the Lyrics to "Never Gonna Give You Up"  It was epic.  ;)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 29, 2010, 08:21:48 pm
Lol nice. Wouldn't it slow down far into the string, though? I remember when scanning through large strings, near the end it was much slower.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 29, 2010, 09:11:16 pm
I managed to get yours down to 190 bytes with a one letter name :)

Code: [Select]
ClrHome
1→A
Ans→B
For(Θ,1,7
Disp "
End
Repeat 0
Output(8,A,sub("σmπimαgα",A,2
For(C,1,8
Output(C,9,"________
End
Disp "
Output(1,9,"The
Output(3,9,"Rick
Output(4,9,"Roller's
Output(6,9,"Of
Output(8,9,"Tomorrow
A+B→A
If A=7 or A=1
-B→B
End

The flicker is a just a little more noticeable since it goes from top to bottom.
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 29, 2010, 09:26:32 pm
Nice, it gets smaller and smaller
Title: Re: Awesome Omnimaga rickrolling program.
Post by: yunhua98 on July 30, 2010, 11:09:09 am
Oh, sorry, I forgot, I only used the "Never Gonna" parts.

nice meishe, I wonder how I didn't think of using for( to clear the RRoT part?
Title: Re: Awesome Omnimaga rickrolling program.
Post by: _player1537 on July 30, 2010, 10:48:13 pm
not sure if I cheated... but here is my solution.  Run ZZZZZ2 to start it, and it will auto go into ZZZZZ3, afterwards you can just run ZZZZZ3.

Spoiler For Spoiler:
Prgm ZZZZZ2
Code: [Select]
:ClrHome
:":→Str4
:"OMNIMAGA→Str1
:" *--++--* →Str2
:"THE             RICK    ROLLER'S        OF              TOMARROW→Str3
:{1,2,3,4,5,6,7,6→L1
:6→A
:‾1→B
:For(D,1,14
:For(C,1,8
:Str4+sub(sub(Str2,1,L1(C))+sub(Str1,L1(C),2)+sub(Str2,L1(C)+3,8-L1(C)),2,8)+sub(Str3,8(C-1)+1,8→Str4
:End
:A+B→A
:If A=7 or A=1
:‾B→B
:augment(DeltaList(cumSum(L1)),{A→L1
:Output(3,1,sub("[===============",1,D+1
:Output(3,16,"]
:End
:sub(Str4,2,1792→Str4
:prgmZZZZZ3

Prgm ZZZZZ3
Code: [Select]
:ClrHome
:0→A
:Ans→B
:While 1
:Output(1,1,sub(Str4,128A+1,128
:A+1→A
:If A=13
:0→A
:End
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 30, 2010, 11:54:47 pm
Oh, sorry, I forgot, I only used the "Never Gonna" parts.

nice meishe, I wonder how I didn't think of using for( to clear the RRoT part?

Thanks, though the only problem with using For( is that, one, it is technically slower and, two, it makes it more noticeable. Using the Output( command is faster and looks better, just quite a bit larger.

not sure if I cheated... but here is my solution.  Run ZZZZZ2 to start it, and it will auto go into ZZZZZ3, afterwards you can just run ZZZZZ3.

Spoiler For Spoiler:
Prgm ZZZZZ2
Code: [Select]
:ClrHome
:":→Str4
:"OMNIMAGA→Str1
:" *--++--* →Str2
:"THE             RICK    ROLLER'S        OF              TOMARROW→Str3
:{1,2,3,4,5,6,7,6→L1
:6→A
:‾1→B
:For(D,1,14
:For(C,1,8
:Str4+sub(sub(Str2,1,L1(C))+sub(Str1,L1(C),2)+sub(Str2,L1(C)+3,8-L1(C)),2,8)+sub(Str3,8(C-1)+1,8→Str4
:End
:A+B→A
:If A=7 or A=1
:‾B→B
:augment(DeltaList(cumSum(L1)),{A→L1
:Output(3,1,sub("[===============",1,D+1
:Output(3,16,"]
:End
:sub(Str4,2,1792→Str4
:prgmZZZZZ3

Prgm ZZZZZ3
Code: [Select]
:ClrHome
:0→A
:Ans→B
:While 1
:Output(1,1,sub(Str4,128A+1,128
:A+1→A
:If A=13
:0→A
:End

Could you please "un-spoil" the source codes? When you put [code][/code] inside of [spoiler][/spoiler] it compresses it very small and it is very hard to read. (At least it does in Chrome, I don't know about other browsers.)
Title: Re: Awesome Omnimaga rickrolling program.
Post by: _player1537 on July 31, 2010, 12:04:13 am
Prgm ZZZZZ2
Code: [Select]
:ClrHome
:":→Str4
:"OMNIMAGA→Str1
:" *--++--* →Str2
:"THE             RICK    ROLLER'S        OF              TOMARROW→Str3
:{1,2,3,4,5,6,7,6→L1
:6→A
:‾1→B
:For(D,1,14
:For(C,1,8
:Str4+sub(sub(Str2,1,L1(C))+sub(Str1,L1(C),2)+sub(Str2,L1(C)+3,8-L1(C)),2,8)+sub(Str3,8(C-1)+1,8→Str4
:End
:A+B→A
:If A=7 or A=1
:‾B→B
:augment(DeltaList(cumSum(L1)),{A→L1
:Output(3,1,sub("[===============",1,D+1
:Output(3,16,"]
:End
:sub(Str4,2,1792→Str4
:prgmZZZZZ3
Prgm ZZZZZ3
Code: [Select]
:ClrHome
:0→A
:Ans→B
:While 1
:Output(1,1,sub(Str4,128A+1,128
:A+1→A
:If A=13
:0→A
:End
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 31, 2010, 12:18:36 am
That's a really interesting way of doing it. The only downside I see of doing it like this is, well one, that you have to do the first program each time if you change Str4 or something and, two, that since you're displaying parts of a string it slows down the farther into it and you can see where it restarts. Otherwise, very nice :) Only optimizations I see is that in the second program you can replace the 0→A and Ans→B with DelVar ADelVar B the second 0→A with DelVar A. Great job :D
Title: Re: Awesome Omnimaga rickrolling program.
Post by: _player1537 on July 31, 2010, 12:26:14 am
:D  Thanks, this is generally the approach I take for things like this >.>  Spent a while getting it to where, Str2 can be any kind of background, and it will stay in its spot while OMNIMAGA is moving around :D
Title: Re: Awesome Omnimaga rickrolling program.
Post by: Deep Toaster on July 31, 2010, 12:57:36 am
Wow, that works really well (no flickers :)). And fast! :D (Except the loading, but that doesn't matter much.)

EDIT: Sizes:

 ZZZZZ2     346 < Small...
  ZZZZZ3      65 < Wow, even smaller...
  Str4      1803 < ...
Title: Re: Awesome Omnimaga rickrolling program.
Post by: meishe91 on July 31, 2010, 01:07:56 am
Wow, that works really well (no flickers :)). And fast! :D (Except the loading, but that doesn't matter much.)

EDIT: Sizes:

 ZZZZZ2     346 < Small...
  ZZZZZ3      65 < Wow, even smaller...
  Str4      1803 < ...


That would be another draw back :P
Title: Re: Awesome Omnimaga rickrolling program.
Post by: _player1537 on July 31, 2010, 01:10:11 am
wierd, on my calc when I checked, str4 was ~2000 bytes... oh, that was before I restricted the size of the string... carry on :P  I tried to decide between fast, and small... fast won ^^
Title: Re: Awesome Omnimaga rickrolling program.
Post by: DJ Omnimaga on July 31, 2010, 02:09:08 am
Lol nice ^^