Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - AssemblyBandit

Pages: 1 ... 22 23 [24] 25 26
346
News / Re: TI-84 + CSE available in stores!
« on: July 01, 2013, 05:14:22 am »
I got my CSE (and I love it!) a couple weeks ago online for $120, they weren't at Office Max or Office Depot. I still havent seen them at Walmart. I completely forgot about checking Best Buy, they're usually overpriced anyway.

347
ASM / Re: Splash screen test on TI-84+C
« on: July 01, 2013, 04:58:40 am »
Hey James, whats the compression ratio using your huffman program? When I try to use the build.bat file it says that it cant create ab.bin and I dont get the .asm file. I made IViewer and it stores images as app vars and displays them but the max size for the app var is 65400 bytes. I cant fit complex images such as a jungle with a lot of leaves using only RLE unless I reduce the quality to an unacceptable level. From what I've read about huffman compression, it sounds good for text but is it better than RLE for images?

348
TI Z80 / Re: Cydia Exiled
« on: December 26, 2011, 04:00:38 am »
Warning! Program will erase any variables stored in RAM!
Be sure to archive anything in RAM that you want to keep.
*********************************************************


This is a demo for Cydia Exiled. There are no goals, its just
the basic game engine with a generic map to test out the games
actions. This is currently only for the TI84+SE but may work on
other versions. (It sets the speed flag and turns off any timers.)


To Install:
Store CMAIN,CREATED,CREDITS,TESTMAP,and TITLE in Archive.
Store CYDIAEX in RAM.

Execute CYDIAEX with Asm(prgmCYDIAEX

Buttons:
F1 and F2 control the left side of the bottom menu.
F4 and F5 control the right side.

Generally F1 is the main button.

Use the arrow keys to move.( Repeating keypresses not implemented yet.)

To exit select Menu.

To rerun the program unarchive CYDIAEX then execute it again.


AssemblyBandit
[email protected]

349
TI Z80 / Re: Cydia Exiled
« on: December 19, 2011, 10:52:33 pm »
Unfortunately I get more time off of work after christmas (12/22-1/1) so my plans are to release a demo on christmas, another on new years, and the game and source some time after that. I should be working on it right now but since I got my internet back Ive been distracted. Im also going to release any development documents for it and maybe a walkthrough.

350
TI Z80 / Re: Cydia Exiled
« on: December 19, 2011, 10:06:55 pm »
Ill still be using '16x16' (4 8x8 tiles) tiles for lava and trees, I dont think they can be done well with just one 8x8. I can only have a maximum of 256 8x8 sprites per map, so Im going to try to keep the large tile count low.

351
TI Z80 / Re: Cydia Exiled
« on: December 19, 2011, 09:26:14 pm »
Heres a screenshot of a test level. I added in more actions so that the character can interact with the environment a little more such as activating levers and buttons (removing walls, hidden chests appearing), picking up objects on the floor (collecting ingredients for potions), climbing ladders, falling through holes, and you can now sleep in beds. I store the map data at $c000 but because I cant execute code there I had to change the way maps were defined. The main game starts at $9000 ($8000-$9000 is for basic ram) currently and doesnt use any rom routines. $0000-$4000 is a waste. $4000-$8000 will be swapped in with text data. I updated the graphics so now it smooth scrolls when you walk around. I was thinking about going with 16x16 tiles but that increases the tile size by too much. Then I had a thought about just making npcs 16x16 that way the main character could start off as a kid (8x8) and "grow" as he increases in level. I scrapped that idea though. I doubt Ill be close to finished on christmas so Ill release a demo instead. Ill try to include a little bit of everything that I got with a few exceptions. The game will still reset the ram as it exits because it will use almost all the ram. Making it into an app is not an option, but eventually Ill fix it so that it compresses, stores, and reloads all the ram.

352
TI Z80 / Cydia Exiled for the +C
« on: November 26, 2011, 04:17:03 pm »
Im programming my latest calc game currently. It follows my unreleased ti86 game Cydia. Its an RPG called Cydia Exiled and follows where the other game has left off. Ive been offline and working on it for the last month now and Im hoping for a christmas release. Ive rewritten the game engine to run on a ti84 but it will use all the RAM while its running and will reset it when its done. I will try to find a workaround such as saving the RAM or turning it into an app but that will come later on. Wont have access to the internet at my house until I finish but I will try to get a video and some screenshots out soon.

353
Site Feedback and Questions / Bots????
« on: November 26, 2011, 04:04:31 pm »
Sorry for the absence, been offline for a few months, got back on and seen the new members bar with mostly names like qwer1234, four characters followed by four numbers, probably should ban them ahead of time?????

354
ASM / Re: Assembly/Hexadecimal Questions
« on: December 30, 2010, 07:02:09 pm »
Ill edit everything to work with the 83+/84+ but the code is pretty embarrassing, I should have it done by tonight. Ill post some code to read 8xp data in a little bit. I originally used VC++ but I might rewrite it in VB.

355
ASM / Re: Calculator's Interrupt Routine
« on: December 30, 2010, 02:10:26 am »
It uses around (at least) 1100 clock cycles every time its called and theres no downside to disabling it if you dont need to update/check any of that stuff. If you want the speed, disable it.

*The timing is based off of a ti84+ interrupt.

356
ASM / Re: Assembly/Hexadecimal Questions
« on: December 30, 2010, 12:11:49 am »
inc (hl)
$34

inc (ix+3)   
$dd $34 $03

dec (hl)
$35

dec (ix+4)
$dd $35 $04

ld (hl),10
$36 $0a

ld (ix+2),10
$dd $36 $02 $0a
^    ^   ^   ^
|     |    |   value to be loaded
|     |    ix index offset
|     actual opcode
ix identifier

Notice youre basically just putting $dd or $fd in front of the equivalent instruction that uses hl and following the opcode with the index offset.

res 0,(ix+1)
$dd $cb $01 $86
                   ^basically just like the other bit instructions, just use the opcode at 0, multiply the bit by 8 and add it to the opcode.

res 6,(ix+1)
$dd $cb $01 $b6
                   ^$86 + 6 * 8 = $b6



One thing thats really useful in a disassembler is having it automatically label rom calls, ram locations, ports, flags, and restarts. Basically just try to have it match any address to one in a rom call table for instructions that use them and do something similar for the ports, ram locations, flags, and restarts.

This is an example of what mine puts into a text file:

0A3E   LD   A,$06
0A40   OUT  ($04),A   ;Power Mode Port
0A42   LD   A,$11
0A44   OUT  ($03),A   ;Interrupt Mode Port
0A46   RES  3,(IY+$12)   ;?indic,shift flags?
0A4A   RES  3,(IY+$09)   ;?on flags?
0A4E   EX   AF,AF'
0A4F   EXX
0A50   EI
0A51   HALT

It puts the extra info into comments at the end of the instructions. Note that this is part of the ti-84's rom, but I made the disassembler for the ti-86 and I havent updated any of the tables. (Its still pretty close though.)

357
ASM / Re: Assembly/Hexadecimal Questions
« on: December 28, 2010, 07:47:09 pm »
ld (**),hl loads hl into a specific 2 byte address. Generally you would use it like ld (score),hl and that would copy your value in hl into your address with the label score.

$dd (ix) and $fd (iy) always precede $cb (bit) or $ed (ext) if present,  followed by the index offset if needed, followed by the instruction. So first you should always check for a $dd or $fd and you would know that you were dealing with an index.

Tomorrow Ill give you the code for my disassembler and that should help you out a bit.

ret = $c9
ld ($9d95),hl = $22 $95 $9d
ld hl,($9d95) = $2a $95 $9d
sbc hl,bc = $ed $42
lbit 1,a,(ix+3) = $dd $cb $03 $4f           (this is the way I have the mnemonic set up in my table but the opcode is the same.)

For bit instructions you can just multiply the bit by 8 and add it to the regular opcode.

bit 0,a = $cb $47
bit 1,a = $cb $4f ($47+bit*8 )

358
ASM / Re: A couple of quick questions regarding the flags register
« on: September 26, 2010, 02:30:04 am »
Quote
I don't think the Z80 is modern enough to have all that prefetching and junk messing with timing. Things were a lot simpler in the 80's Tongue

Heres something to look at: http://www.ftp83plus.net/Tutorials/z80optiA.htm . You are correct, there is no prefetch on the z80. In the document he mentions the intel 8088 and I think that maybe he got confused. My information did not come from that file though, I had read it in an assembly programming book years ago. For the past hour I have been trying to find out exactly what the chip is doing. Ive read that Zilog has never released the internal sequencing to the z80 so I dont think that I can verify anything on paper. I remember reading about how if the same registers or instructions have already been fetched, the z80 will not have to fetch them for the next instruction, thus saving at least one clock cycle. Unfortunately, I dont have the book anymore.

359
ASM / Re: A couple of quick questions regarding the flags register
« on: September 25, 2010, 11:31:51 pm »
The clock cycle information you guys are viewing isnt completely accurate. Depending on wether the register value has to be prefetched or not will actually increase the number of clocks. The links Ive looked over on this post dont mention this, but the values that they give are actually based off of the best possible scenario. Its been a while, and I could be wrong though. But if you really need to know the exact times of the instructions I would do some research on the prefetch. You probably dont need to get it that exact though  ;)

360
Miscellaneous / Re: Facebook
« on: September 23, 2010, 11:00:45 pm »
Quote
On Facebook I saw some people putting their phone number on there. Personally I would be scared a bit of doing that. I just added some of my online contact info, personally, and I did not bother updating my 3 years old pic Tongue

I have my phone number there! Its not like I get calls from random people! (Theyre suppose to be your friends anyway!) I wouldnt put up my address or ss number, but I can always get a new phone number or just not answer!

Pages: 1 ... 22 23 [24] 25 26