Welcome,
Guest
. Please
login
or
register
.
Did you miss your
activation email
?
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Home
About
Team
Rules
Stats
Status
Sitemap
Chat
Downloads
Forum
News
Our Projects
Major Community Projects
Recent Posts
Unread Posts
Replies
Tools
SourceCoder3
Other Things...
Omnimaga Radio
TI-83 Plus ASM File Unsquisher
Z80 Conversion Tools
IES TI File Editor
Free RAM areas
Comprehensive Getkeyr table
URL Shortener
Online Axe Tilemap Editor
Help
Contact Us
Change Request
Report Issue/Bug
Team
Articles
Members
View the memberlist
Search For Members
Buddies
Login
Register
Omnimaga
»
Forum
»
Calculator Community
»
Other Calc-Related Projects and Ideas
»
TI Z80
»
Samocal
« previous
next »
Print
Pages: [
1
]
2
3
4
Go Down
Author
Topic: Samocal (Read 22433 times)
0 Members and 2 Guests are viewing this topic.
Xeda112358
they/them
Moderator
LV12
Extreme Poster (Next: 5000)
Posts: 4704
Rating: +719/-6
Calc-u-lator, do doo doo do do do.
Samocal
«
on:
February 04, 2011, 02:45:19 am »
Samocal is an RPG I started and never finished over two years ago. It made use of Celtic 3, but it was still slow and data files were still very large. So guess what? I've been programming assembly for well over a year and ya know what, I'm getting a little bored. I think it is time I pick up this old project again, but this time I will use BatLib to take advantage of the speed and memory efficiency I designed it for. Below you will see what the old program looked like.
For an example of size, in the old version, a map uses about 1000 byte (16x24 tiles). In this version. 16x24 tiles will use less than 200 bytes.
Currently, my priority is on BatLib, but I figured I may as well get the word out here. Feel free to comment!
Logged
+6/-0 karm for this message
My pastebin
|
Pokémon Amber
|
Grammer Programming Language
|
BatLib Library
|
Jade Simulator
|
Zeda's Hex Opcodes
|
FileSyst Library
|
CopyProg
|
TPROG
|
GroupRead
|
Lbl Read/Write
|
Z80 Floating Point Routines
(
z80float on GitHub
)|
Z80 Optimized Routines Repository
AngelFish
Is this my custom title?
Administrator
LV12
Extreme Poster (Next: 5000)
Posts: 3242
Rating: +270/-27
I'm a Fishbot
Re: Samocal
«
Reply #1 on:
February 04, 2011, 02:46:10 am »
It looks excellent.
Logged
∂²Ψ -(2m(V(x)-E)Ψ
--- = -------------
∂x² ℏ²Ψ
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
Re: Samocal
«
Reply #2 on:
February 04, 2011, 02:53:30 am »
THis looks nice. It would have been cool if it was finished.
One thing I noticed though is that it flickers when your char moves. Didn't Celtic III have sprite arguments that let you not update the LCD when displaying them?
Anyway hopefully a batlib version would be smaller. One major issue with my last games was the large map files. I used matrices so with all the commas and two digits numbers it filled my archive fast.
Logged
Xeda112358
they/them
Moderator
LV12
Extreme Poster (Next: 5000)
Posts: 4704
Rating: +719/-6
Calc-u-lator, do doo doo do do do.
Re: Samocal
«
Reply #3 on:
February 04, 2011, 11:32:10 am »
Yeah, I had the same problem. BatLib uses a string of bytes for tilemap data. The disadvantage is the ease of use (which is why I am made a sprite editor and map editor), but the advantage is size and speed. BatLib doesn't need to convert all those floating point numbers which saves over a thousand (maybe several thousand) cycles per tile. Plus, it is set up to make sprite display even faster because the result of one displayed sprite is the pointer to where the next tile is. Oh, jeez, I need to make a variable size tilemap method... I think I just figured out an easy way to make tilemaps with, say, 8x16 tiles or something crazy like that... Ideas update!
Logged
My pastebin
|
Pokémon Amber
|
Grammer Programming Language
|
BatLib Library
|
Jade Simulator
|
Zeda's Hex Opcodes
|
FileSyst Library
|
CopyProg
|
TPROG
|
GroupRead
|
Lbl Read/Write
|
Z80 Floating Point Routines
(
z80float on GitHub
)|
Z80 Optimized Routines Repository
ztrumpet
The Rarely Active One
CoT Emeritus
LV13
Extreme Addict (Next: 9001)
Posts: 5712
Rating: +364/-4
If you see this, send me a PM. Just for fun.
Re: Samocal
«
Reply #4 on:
February 04, 2011, 04:24:13 pm »
Cool, "THE GAME" looks nice.
I like RPGs...
Logged
If I'm wrong, please correct me!
Unfinished Projects:
Elmgon
14%
Basic
Movement Demo
Homescreen Game Pack
80%
Basic
Latest Release
Cube Droid Saves the Galaxy
65%
Axe
Demo
Detonate
70%
Axe
Completed Projects:
Exodus
|
Midnight
|
Drifter
|
Axe Snake
|
Jump!
|
Factory Theta
|
Spider
|
Plot Drop
|
Papi Jump
|
Numb3rs
|
Nibbler
|
Boost
|
Duel Tile Map Editor
|
Homescreen Map Editor
|
Key Group Check
|
Oasis
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
Re: Samocal
«
Reply #5 on:
February 05, 2011, 02:47:34 am »
I hate having to make a tilemap editor X.x. I tried in Axe before and it would just throw me a Done message. In BASIC it was usually slow so I just used Draw N Map in the archives.
Logged
Xeda112358
they/them
Moderator
LV12
Extreme Poster (Next: 5000)
Posts: 4704
Rating: +719/-6
Calc-u-lator, do doo doo do do do.
Re: Samocal
«
Reply #6 on:
February 05, 2011, 11:27:33 am »
Ah, I actually find it pretty easy to do, now. I always use the same basic outline, though. Move the tile, press enter to place it, use two keys to cycle through tiles, and press clear to the clear the map. The map editor I currently have only does one map at a time. From the old BatLib version (including the program version) I made a map editor that handled the whole 64x128 map... I am currently working on that again
Logged
My pastebin
|
Pokémon Amber
|
Grammer Programming Language
|
BatLib Library
|
Jade Simulator
|
Zeda's Hex Opcodes
|
FileSyst Library
|
CopyProg
|
TPROG
|
GroupRead
|
Lbl Read/Write
|
Z80 Floating Point Routines
(
z80float on GitHub
)|
Z80 Optimized Routines Repository
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
Re: Samocal
«
Reply #7 on:
February 05, 2011, 03:08:57 pm »
Yeah my main issue was mostly in Axe. Idk why. My gripe with Axe was dealing with external appvars. I always had troubles with them. This is the main reason why I quitted Axe.
Also do you mean 96x64 instead of 128x96? Because the screen is 96x64 pixels
(Unless you don't mean pxl-test-based maps?)
«
Last Edit: February 05, 2011, 03:09:34 pm by DJ Omnimaga
»
Logged
Xeda112358
they/them
Moderator
LV12
Extreme Poster (Next: 5000)
Posts: 4704
Rating: +719/-6
Calc-u-lator, do doo doo do do do.
Re: Samocal
«
Reply #8 on:
February 05, 2011, 03:32:22 pm »
I meant 64 tiles tall by 128 tiles wide-- I was using the font hook method, so there were 8 maps by 8 maps that were each 8x16
Logged
My pastebin
|
Pokémon Amber
|
Grammer Programming Language
|
BatLib Library
|
Jade Simulator
|
Zeda's Hex Opcodes
|
FileSyst Library
|
CopyProg
|
TPROG
|
GroupRead
|
Lbl Read/Write
|
Z80 Floating Point Routines
(
z80float on GitHub
)|
Z80 Optimized Routines Repository
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
Re: Samocal
«
Reply #9 on:
February 06, 2011, 12:33:16 am »
Oh ok. That said, even then I am glad they're split, though, because I was also wondering how you fit 128x64 tiles in memory.
Logged
Xeda112358
they/them
Moderator
LV12
Extreme Poster (Next: 5000)
Posts: 4704
Rating: +719/-6
Calc-u-lator, do doo doo do do do.
Re: Samocal
«
Reply #10 on:
February 06, 2011, 01:28:36 am »
Ah, it fit in 4096 bytes. I used Str0 to contain the font data and the tilemap data, so Str0 was 4108 bytes of data. Luckily it could be archived
Logged
My pastebin
|
Pokémon Amber
|
Grammer Programming Language
|
BatLib Library
|
Jade Simulator
|
Zeda's Hex Opcodes
|
FileSyst Library
|
CopyProg
|
TPROG
|
GroupRead
|
Lbl Read/Write
|
Z80 Floating Point Routines
(
z80float on GitHub
)|
Z80 Optimized Routines Repository
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
Re: Samocal
«
Reply #11 on:
February 06, 2011, 02:48:03 am »
Hmm now that I think about it, 128x64 in string format isn't too large, after all. I thought it was something like 50 KB, but it's 8192 KB. What kind of compression do you use to keep it under 8192, though?
Logged
Xeda112358
they/them
Moderator
LV12
Extreme Poster (Next: 5000)
Posts: 4704
Rating: +719/-6
Calc-u-lator, do doo doo do do do.
Re: Samocal
«
Reply #12 on:
February 06, 2011, 02:56:48 am »
Oh, it uses only 16 sprites, so each tile uses half a byte.
Logged
My pastebin
|
Pokémon Amber
|
Grammer Programming Language
|
BatLib Library
|
Jade Simulator
|
Zeda's Hex Opcodes
|
FileSyst Library
|
CopyProg
|
TPROG
|
GroupRead
|
Lbl Read/Write
|
Z80 Floating Point Routines
(
z80float on GitHub
)|
Z80 Optimized Routines Repository
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
Re: Samocal
«
Reply #13 on:
February 06, 2011, 03:21:53 am »
Oh wait you have half byte support too? :O
Btw does your asm tools allow people to squish their tile/sprite/map data to machine code format like the AsmComp(prgmNAME,prgmNAME2) command does? Because hex is twice larger...
«
Last Edit: February 06, 2011, 03:22:57 am by DJ Omnimaga
»
Logged
Xeda112358
they/them
Moderator
LV12
Extreme Poster (Next: 5000)
Posts: 4704
Rating: +719/-6
Calc-u-lator, do doo doo do do do.
Re: Samocal
«
Reply #14 on:
February 06, 2011, 10:55:06 am »
Ah, yeah it does that. It is command 5 and command 6 does the opposite. I want to add a squisher that works with weird bit sizes so like if you had only 8 tiles, you would need 3 bits per tile in the tilemap... It would also be useful for sprites... especially if they are, say, 5 pixels wide... good for compression...
Logged
My pastebin
|
Pokémon Amber
|
Grammer Programming Language
|
BatLib Library
|
Jade Simulator
|
Zeda's Hex Opcodes
|
FileSyst Library
|
CopyProg
|
TPROG
|
GroupRead
|
Lbl Read/Write
|
Z80 Floating Point Routines
(
z80float on GitHub
)|
Z80 Optimized Routines Repository
Print
Pages: [
1
]
2
3
4
Go Up
« previous
next »
Omnimaga
»
Forum
»
Calculator Community
»
Other Calc-Related Projects and Ideas
»
TI Z80
»
Samocal