Omnimaga
Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: Geekboy1011 on July 18, 2011, 03:51:20 pm
-
So back when Axe first came out i decided i would attempt to make a PiCross clone. well i failed horridly at axe and eventually managed to pick up asm so here we go
(http://img.removedfromgame.com/imgs/2-wabbitemu.gif)
so far not to much is done i have most of my graphics routines done. and 2 of the underlying support routines done.
ToDo list (in no particular order):
Features:
- external levels
- overlay mode
- highscores
Everything else:
-rendering of levels
-code to check for level completion
-code to handle input
-...why am i typing this huge list of things out
needless to say a lot still needs to be done but were getting some where!
-
Bump for support! Can't wait to see more progress on this./me waves flag
-
Oh cool Picross I like this game :D
-
raa and now we have a title screen
(http://img.removedfromgame.com/imgs/TiXT.gif)
Will get one more thing added to it eventually, but for now I like it.
now to go work on the actual engine xD
-
Hey look we now have a crappy textmapper!
(http://img.removedfromgame.com/imgs/TiXt3.gif)
Oh and here is the crap code that makes it work.(minus the sprite routine and such)
TextOut:
;
; assumes a standards null termed string
;out puts text into the black buffer
; pointer to string to put out
;d = x
;e = y
push de ; save xy
ld a,(bc) ;ld a with first letter in the string
inc bc ; inc for next iteration
or a
jp z,_null
cp $20 ; if
; less than 32 (aka null) then abort
jp z,_space ; if 32 add space
sub $41 ; subtract 41 to properly reflect my table
ld hl,LetterLut ; ld hl with table
ld d,0
ld e,a ; add a to hl
add hl,de ;2 bytes per entry so we add it twice to compensate
add hl,de ;
ld a,(hl) \ inc hl \ ld h,(hl) \ ld l,a ; load sprite pointer into hl
ld a,(hl) ; save letter width to scrap+3
ld (scrap+3),a
inc hl ; in to actual letter data
pop de ;resotre x y
push bc ; save string pointer
push de ; save x y again
push hl ; save sprite pointer
pop ix ; into ix
push ix ; save sprite pointer
ld a,d ; load a with x val
ld bc,appbackupscreen ; load bc with buffer
call putsprite8xb ; draw
pop ix ;restore sprite pointer
pop de ; restore x y
push de ; resave xy
ld a,d ; save x in a
ld bc,plotsscreen ; load bc bufer
call putsprite8xb ; draw
pop de ; restore x y
ld a,(scrap+3) ; load a with sprite width
add a,d ; add sprite width to x
ld d,a ; save
pop bc ; restore string pointer
jp textout ;
_null:
pop de ;restore stack
ret ;return
_space:
pop de
ld a,6
add a,d
ld a,d
jp textout
-
Wheee, progress! /moresuppport. Looks nice. Good luck with the engine!
-
Personally, I don't really like the title screen, perhaps make the title colours all the same (all black or all grey?) :)
And as JC said, good luck with the engine, which is what you should start with ;) I leave title screens and that stuff for the end, but it's a personal choice.
Nevertheless, good job so far!
-
hmm i might dunno yet.
and the reason i did the title screen first was to check to make sure the graphics routines and the text routines are all working properly. kill 2 birds with one stone ^_^
-
More updates after working with Kerm a lot on this I can now use the DCS font in my game!
What this means? i save ~800bytes of space, get a nifty looking font, and get to use a new feature that's getting added into DCS 7.2 ^_^
(http://img.removedfromgame.com/imgs/titledone.gif)
Title with the font.
And now that The font routine is done i can actually start making it look less like a flashy demo and more like a game!
menus are first and should be done quickly I already have lots of ideas how to go about them. Then the main engine. wahoo!!
and random stats according to spasm
Number of labels: 4672
Number of defines: 17
Code size: 1351
Data size: 201
Total size: 1552
i think its counting .db statements as lables xD
-
Looks awesome, Geek. I think the DCS fonts'll be cool too. ^-^
-
Same here and its a helluva lot smaller than using my own so i'm happy ^_^