Omnimaga: The Coders Of Tomorrow
Welcome, Guest. Please login or register.
 
Omnimaga: The Coders Of Tomorrow
20 May, 2013, 17:16:18 *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
  home news downloads projects tutorials misc forums rules new posts irc about Login Register  
+-OmnomIRC

You must Register, be logged in and have at least 40 posts to use this shout-box! If it still doesn't show up afterward, it might be that OmnomIRC is disabled for your group or under maintenance.

Note: You can also use an IRC client like mIRC, X-Chat or Mibbit to connect to an EFnet server and #omnimaga.

  Show Posts
Pages: [1] 2 3 ... 121
1  Omnimaga / Ash: Phoenix / Re: Ash: Phoenix- Reboot on: 13 March, 2013, 01:15:12
yeah actually that wouldn't even be difficult seeing as how nearly all the text is in an outside file

when this gets finished I can send the text to anyone who wants to translate stuff to be translated
2  Calculator Community / TI Z80 Calculator Projects / Re: [Axe] Super Crate Box on: 13 March, 2013, 01:13:42
iirc thepenguin's list of free ram areas is semi out of date with the latest version of axe since runer moved around some stuff. You'll want to take a look at the axe.inc file included in the latest release to see the details
3  Omnimaga / Ash: Phoenix / Re: Ash: Phoenix- Reboot on: 11 March, 2013, 05:27:30
^ I never lived in China Huh?

Anyway I'm actually in South America, and I'll be here until the start of the next academic year at which point I'll move back to the US.
4  Omnimaga / Ash: Phoenix / Re: Ash: Phoenix- Reboot on: 08 March, 2013, 17:05:44
not yet, progress is slowing atm because I just moved to another country on the other half of the world lol

Once things settle down I'll have a bit more time to work it out.
5  Omnimaga / Ash: Phoenix / Re: Ash: Phoenix- Reboot on: 19 February, 2013, 03:54:12
Nearly ready for a demo update, except for one pretty major bug that makes the enemy's skill attacks OHKO Angry

Mainly posting to provide myself a way to keep track of what I have to do still; I've been really busy the last couple weeks, and will be even busier the next few...

Anyway the point is that the project isn't dead
6  Calculator Community / TI Z80 Calculator Projects / Re: [Axe] Super Crate Box on: 16 February, 2013, 05:23:48
That slight screen shake effect you have there really adds to the feel of the game

Great job so far!
7  General Discussion / General Technology and Hardware Discussion / Re: Something I'd like to see on iOS on: 12 February, 2013, 03:37:17
I know that Gridlock and Iconoclasm offer abilities to move around springboard icons, and Infinifolders allows you to have unlimited folder sizes but as far as a startmenu/taskbar I don't really know. A touch screen device doesn't really lend itself to the desktop metaphor very well Tongue

iFile also gives you a decent gui to view all the folders/files on your device. I wonder if UbuntuOS/FirefoxOS could be loaded onto an iPT...
8  Omnimaga / Ash: Phoenix / Re: Ash: Phoenix- Reboot on: 11 February, 2013, 05:04:18
Woo, update!

I implemented the store in addition to a lot of other things in the npc scripts, optimized things back down to app-size, and fixed a crap ton of bugs.
Not much to show but a lot of progress on the internal side I suppose. I have yet to fully implement this terrain thing: I laid down the framework but it's not finished yet...
9  Omnimaga / Ash: Phoenix / Re: Optimization help [A:P] on: 10 February, 2013, 19:06:08
Wait a minute...


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
!If r3
16
cchar()
return
end
e8457->A
while
r3^10->{a--}
r3/10->r3
end

while -e8457
{a}+16
cchar()
a++
end
return

..gets rid of that extra while loop also
10  Omnimaga / Ash: Phoenix / Re: Optimization help [A:P] on: 10 February, 2013, 18:34:26
Thanks Xeda; I modified it a little bit because it wasnt working exactly for me.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
!If r3
16
cchar()
return
end
e8456->A
while -e8452
r3^10->{a}
r3/10->r3
a--
end
a--
while 1
endif {a++}
while -e8457
{a}+16
cchar()a+1->a
end
return
11  Omnimaga / Ash: Phoenix / Re: Optimization help [A:P] on: 29 January, 2013, 21:42:54
Yeah, he's working on it (I think)

Runer (or anyone who wants to look at this code), if you have questions feel free to pm me or just post here.
12  General Discussion / Humor and Jokes / Re: Worst Names for a Band on: 27 January, 2013, 22:50:48
The New Pornographers and Starfucker are two groups who I listen to regularly
13  Omnimaga / Ash: Phoenix / Optimization help [A:P] on: 27 January, 2013, 05:59:48
If anyone wants to take a crack at optimizing any of these routines, I'd be very grateful Grin. I've gone over them a few times, but haven't been able to get too much out of 'em.
Custom Menu Routine

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
:Lbl CMen
.Creates a menu and returns the int index of the value chosen, returns -1 if canceled with Alpha
.r1-X, r2-Y, r3- NUM OPTIONS,r4 longest entry length, r5 pointer to string data for choices, broken by 0's
:0→F
:41→K
:r1→A
:r2→B
:r3→C*7+4→r6
:r4→D*4+10→r3
:r6→r4
:Box()   \\box drawing routine that takes similar arguments to Rect
:B+3→r2
:r5→E→r3
:For(C)
:¦ A+8→r1
:¦ CText()  \\custom text routine, same argument format as text().
:¦ r2+7→r2  \\r2 is untouched in the routine, the x coord at the end of the text drawn returns at r1
:¦ r3++
:End
:Text(B+2*256+A+4→A+4)
:While 1
:¦ !If +6
:¦ ReturnEFFFF
:End
:If K
:=1-(K=4)+F
:!If +1
:+1
:End
:min(-1,C-1)→F
:{E86D7}-4→{E86D7}
:DrawF "   "
:Text(F*7*256+A)
:DrawF Str1P
:Else
:Delay()
:End
:DispGraphrr
:End!If getKey→K-54
:ReturnF
Custom decimal drawing routine

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
:Lbl CDec
.custom decimal drawing routine, arguments X,Y,Num
:.E0504→{E8251}r
:!If r3
:16
:CChar()
:Return
:End
:r3/10000→{E8452}
:r3/10/10/10^10→{E8453}
:r3/10/10^10→{E8454}
:r3/10^10→{E8455}
:r3^10→{E8456}
:0→{E8457}
:E8452→r3
:For(5)
:¦ If {r3}
:¦ !If {E8457}
:¦ 1→{E8457}
:End
:End
:If {E8457}
:{r3}+16
:CChar()
:End
:r3++
:End
:Return
Scrolling list implementation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
:Lbl ItemS
:.SELECT ITEMS
.creates a scrolling menu, A is the visible offset of the cursor, B is the offset of the window
.r1 is the argument for starting value of the cursor
.oItem points to the beginning of item data which is in the format item ID, quantity
:If r1>5
:r1/6*6→B
:r1^6→A
:Else
:r1→A
:0→B
:End
:PrepI() \\prepares for dealing with items (just a getcalc call)
:41→K
:length(oItem)→L
:While 1
:¦ !If +6
:¦ Return‾1
:End
:If +48
:Box(30,0,66,40)
:3→r2
:B*2+oItem→F
:For(E,0,5)
:¦ If {F}→r1
:¦ GetI() \\copies item information using r1 to L5+e20
:¦ L5+E20→r3  \\this is the name of the item
:¦ CText(40)
:¦ Text(r2-1*256+84)
:¦ DrawF "x"
:¦ DrawF {F+1}►Dec \\quantity of item
:¦ Else
:¦ Str0N→r3
:¦ CText(40)
:End
:r2+7→r2
:F+2→F
:End
:
:!If K-1
:A++
:!If -5
:4→A
:If A+E≤L
:B++
:End
:End
:End
:!If K-4
:A--
:!If +1
:→A
:B--
:!If +1
:→B
:End
:End
:End
:
:Text(A*7+2*256+34)
:DrawF Str1P
:
:InfI({A+B*2+oItem}) \\displays information about the item in another box
:Else
:Delay()
:End
:
:DispGraphrr
:End!If getKey→K-54
:A+B+1
:Return
Size over speed tilemapper (only used to draw starting images)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
:Lbl DrawM
.basic tilemapper, I care nothing about speed here, go for size. Draw1 is just a routine to draw a 12x12 bitmap in grayscale
.Y1 is tiles
.x, y char offset is 4,3
:ClrDrawrr
:.DRAW MAP θ=MAPFILE PTR
:‾8→T
:PY-3*48+θ+PX-4→F
:For(B,0,5)
:¦ For(A,0,8)
:¦ ¦ conj({F+A}*48+Y1,L1,48)
:¦ ¦
:¦ ¦ Draw1(A*4*3,T,L1)
:¦ End
:¦ T+12→T
:¦ F+48→F
:End
Asm 16x16 4level gray mask routine

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include "Axe.inc"

.db $00,$00


mask16:
;Grayscale mask command with 16x16 sprites

;Masked Sprite Format
;3 layers, 12x16
;Mask applied to both buffers
;Front Buffer
;Back Buffer
;SpritePointer always $8528
;byte to draw axv_R2 (X + y*12*12 + 48)
;aligned/unaligned by 4px axv_R1 0 or 1
ld hl,(axv_R1)
ld b,l
xor a \ cp b
jr z, draw
ld hl,$8528
ld b, 16
shiftMask:
ld a, $FF
rrd \ inc hl
rrd \ inc hl
djnz shiftMask
ld b, 32
xor a
shiftSprites:
rrd \ inc hl
rrd \ inc hl
djnz shiftSprites

draw:
ld hl,$9340 ;drawposition in hl
ld ix,$8528 ;sprite mask pointer
ld de,(axv_R2)
add hl, de
ld b,16
ld de, 11
drawFront:

ld a, (ix)
and (hl)
or (ix+32)
ld (hl), a
inc hl
inc ix

ld a, (ix)
and (hl)
or (ix+32)
ld (hl), a
add hl,de
inc ix

djnz drawFront


ld hl,$9872 ;reset registers
ld ix,$8528
ld de,(axv_R2)
add hl, de
ld b, 16
ld de,11
drawBack:
ld a, (ix)
and (hl)
or (ix+64)
ld (hl), a
inc hl
inc ix

ld a, (ix)
and (hl)
or (ix+64)
ld (hl), a
add hl,de
inc ix

djnz drawBack
Edit: one more, the map loading code. Seems like this could be cleaned up quite a bit

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
:Lbl LoadM
.Loads a map into theta using OverY and OverX coordinates
.24x24 tilemap for overX, overY coords storted at theta+2304
:OverY*24+OverX+θ+2304→r6
:.LOAD WARPS,NPCs,ETC
:conj({}-1*32+Y2,L5,32) \\load map information into L5
:{L5+E1E}r→A
:If {L5+E17}*5→B
:conj(Y2+A,E8000,B)
:End
:E8000+B→Ptrg
:A+B→A
:If {L5+E18}*4→B
:conj(A+Y2,Ptrg,B)
:End
:Ptrg+B→Pwrp
:A+B→A
:If {L5+E19}*6→B
:conj(A+Y2,Pwrp,B)
:
:End
:!If OverY
:Fill(θ,768,72)
:Else
:!If OverX
:
:FillM(θ) \\fill map with 16x16 square of 72s at theta
:Else
:DeCoM(r6-25,θ) \\decompress 16x16 map at r6-25 into theta
:End
:DeCoM(r6-24,θ+16)
:!If OverX-23
:FillM(θ+32)
:Else
:DeCoM(r6-23,θ+32)
:End
:End
:
:!If OverX
:FillM(θ+768)
:Else
:DeCoM(r6-1,θ+768)
:End
:DeCoM(r6,θ+768+16)
:!If OverX-23
:FillM(θ+768+32)
:Else
:DeCoM(r6+1,θ+768+32)
:End
:
:!If OverY-23
:Fill(θ+1536,768,72)
:Else
:!If OverX
:FillM(θ+1536)
:Else
:DeCoM(r6+23,θ+1536)
:End
:DeCoM(r6+24,θ+1536+16)
:!If OverX-23
:FillM(θ+1536+32)
:Else
:DeCoM(r6+25,θ+1536+32)
:End
:End
:Return
14  Calculator Community / TI Z80 Calculator Projects / Re: GLIB a graphics axe 3d librairy on: 24 January, 2013, 17:33:36
Pretty impressive work so far TheMachine Cheesy Looking forward to some more implementations of other textures and clipping
15  Omnimaga / Ash: Phoenix / Re: Ash: Phoenix- Reboot on: 22 January, 2013, 05:21:11
Now that my IDE is near completion, I picked up my calc today, dusted off the source, made a fresh build, and confirmed that everything is working fine and have begun to re-familiarize myself with the code (thank goodness for all my extensive documentation).

New idea: terrain

Nothing fancy, but I think that having some tiles more easily traversable than others might make things interesting Cheesy I always thought that the stark walkable/wall duality of most RPGs wasn't quite indicative of real life. I'm thinking 3 levels- fast (road, short grasses, floors) medium (tall grasses) and slow (large bushes).
Pages: [1] 2 3 ... 121
Powered by EzPortal
Powered by MySQL Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Powered by PHP
Page created in 0.398 seconds with 27 queries.
Skin by DJ Omnimaga edited from SMF default theme with the help of tr1p1ea.
All programs, games and songs avaliable on this website are property of their respective owners.
Best viewed in Opera, Firefox, Chrome and Safari with a resolution of 1024x768 or above.