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 - ZippyDee

Pages: 1 ... 18 19 [20] 21 22 ... 51
286
TI Z80 / Re: zIDE: Another On-Calc Assembly Environment
« on: July 04, 2011, 01:58:07 am »
I guess I'll be the one to ask: are you doing with this to differentiate it from Mimas?
Well, one obvious thing would be syntax highlighting. Also, I PLAN for programs to be stored as regular program objects that are editable in the OS editor, but that may change to be AppVars with a more compressed format as well, mostly for speed of compiling and highlighting. I also might have a feature for line addresses in place of line numbers.

Other than that, I really don't know. At this point a lot of this is still mostly a learning experience for me.

Also, I forgot to mention that I do intend to have a copy/paste feature.

287
TI Z80 / zIDE: Another On-Calc Assembly Environment
« on: July 03, 2011, 10:28:26 pm »
Okay, so I've been working on this for a while now, and I'm pretty happy with how some of my routines are turning out so far. I haven't gotten very far, and I'm still only working on the very basics of it right now, but here's basically what I'm thinking about:


zIDE was inspired by Deep Thought's XDE, but this will be for on-calc Assembly programming. If it ever gets done, here's what I'm planning for it to have:
  • Custom text editor
  • 4-level grayscale syntax highlighting
  • Line numbering
  • Line auto-indenting
  • Jump to label / Jump to line
  • Relative label support
  • On-Calc Compiling with fairly descriptive errors (as much as possible, at least)
  • Running
  • #include support (hopefully)
  • Saving as a program that can be edited in the normal OS editor
  • Back-up to AppVar
   Note: If #include support ends up working, I will make the ti83plus.inc file a separate file so the app doesn't take up a huge amount of pages. However, the ti83plus.inc file will definitely not be the complete file. I will try to include as much of the basic things as I can, but I doubt it will include things like the two-byte key codes (of which there are A LOT).

Honestly I'm not sure how many pages this app will end up being, but it shouldn't be more than two...Hopefully I can get it all into one page.

So, that's what I'm planning. We'll see how much I can actually get to, seeing as I'm basically learning ASM as I go with this thing. I already feel like this has been such a great learning experience!

Right now I'm working on the text input, so nothing stated above is absolutely positively for certain going to happen, but that also means that it can change and be added to! Any suggestions are welcome (in fact, I'd LOVE suggestions to make it even better).

ALSO, I will be asking a lot of questions, and probably have a lot of routines that I'll screw up little things in (or maybe big things) that might need some debugging, so any and all assistance is also welcomed with open arms.

I may have a screenshot pretty soon, but that's all for now!

288
ASM / Re: App Programming
« on: July 03, 2011, 02:11:38 am »
WabbitCode makes .8xk files for apps. I'm using it on my OSX for my IDE I'm developing.

289
ASM / Re: help me with the string commands
« on: July 03, 2011, 01:52:51 am »
I noticed a while ago that the routine supplied in 28 days doesn't account for partial matches. There are also a few other errors in some routines...

290
Other / Re: lego 3D printer/plotter in instructables
« on: July 02, 2011, 11:39:02 pm »
I wish lego made stepper motors so they would be at least more accurate.  Well, at least they have a tachometer in them.  Thank you!
You can craftily use light sensors as rotation sensors. ;)

291
Gaming Discussion / Re: Pokemon Rights Movement
« on: July 02, 2011, 11:32:30 pm »
i like FPS games and i can program in TI BASIC language. I want to learn Axe or ASM programming
If TI-BASIC is the language you're most comfortable with, then I'd suggest learning Axe first and then ASM. Axe is pretty much the perfect combination of TI-BASIC and ASM for people who want to ease into assembly programming.

292
ASM / Re: Rectangle Drawing Routines
« on: July 02, 2011, 11:18:02 pm »
Unfortunately it seems there are a few errors somewhere in my routine...I could have sworn it was working just fine before. If I can get them figured out I'll post that fixed version. THEN maybe it would be worthwhile to see the size/speed of this routine.


EDIT: Fixed, all thanks to Calc84. Now you can check for speed and size if you want...I don't know how to go about doing that, otherwise I would do it myself (I'm curious to know, too!)

293
Miscellaneous / Re: Attractive Names
« on: July 02, 2011, 09:46:26 pm »
Personally, I really like the name Eliza (or Elisa, however you want to spell it). Also the name Kit (as a nickname for Katharine).

294
Miscellaneous / Attractive Names
« on: July 02, 2011, 09:36:42 pm »
What are the most attractive boys'/girls' names you can think of?

295
TI Z80 / Re: My explosive contest entry
« on: July 02, 2011, 07:22:31 pm »
D: NOOO!! This was looking so good!!

296
TI Z80 / Re: FP Animation Studio
« on: July 02, 2011, 09:49:05 am »
This looks awesome!! This could definitely be a huge help for a lot of things in the future!

How about allowing for varying speed on the animation playback?

297
ASM / Re: List of Bytes/Time each command takes?
« on: July 02, 2011, 09:40:49 am »
You can use this page, too. On the left you can see the bytes, and cycles are there under the heading "T". However it doesn't seem to have the number of cycles for most of the undocumented commands.

298
ASM / Re: Rectangle Drawing Routines
« on: July 02, 2011, 08:57:46 am »
Thanks! Again, I'm not going to say that this is the most efficient method by any means. It's just what I happened to come up with. There's probably some genius out there who could write one much better than this *cough*Runer/ThePenguin/Brandon/calc84*cough*

299
ASM / Rectangle Drawing Routines
« on: July 02, 2011, 12:51:48 am »
I have a program that uses two buffers and it toggles which buffer it's writing to using a flag. Because it uses that flag I figured it would be a good idea to utilize that for drawing routines so they can draw to whichever buffer it's currently set to instead of having to have separate routines for each buffer.

While writing those routines, I came up with this set of rectangle drawing routines that I think are pretty good, though they probably could be optimized quite a bit.

Anyway, I thought I'd share them:

Code: [Select]
;;---------------------
;; Rect Off/On/Inv
;;---------------------
RectOff:
;;Clears a rectangle on the buffer
;;IN:
;; D contains x
;; E contains width
;; H contains y
;; L contains height
;;DESTROYS: All, OP1, 1st byte of OP2
call GetRectLine
ld a, 12
sub c
ld e, a
ld d, 0
_rOffLoop1:
push de
ld de, OP1
push bc
ld b, c
_rOffLoop2:
ld a, (de)
cpl
and (hl)
ld (hl), a
inc hl
inc de
djnz _rOffLoop2
pop bc
pop de
add hl, de
djnz _rOffLoop1
ret

RectOn:
;;Draws a rectangle on the buffer
;;IN:
;; D contains x
;; E contains width
;; H contains y
;; L contains height
;;DESTROYS: All, OP1, 1st byte of OP2
call GetRectLine
ld a, 12
sub c
ld e, a
ld d, 0
_rOnLoop1:
push de
ld de, OP1
push bc
ld b, c
_rOnLoop2:
ld a, (de)
or (hl)
ld (hl), a
inc hl
inc de
djnz _rOnLoop2
pop bc
pop de
add hl, de
djnz _rOnLoop1
ret


RectInv:
;;Inverts a rectangle on the buffer
;;IN:
;; D contains x
;; E contains width
;; H contains y
;; L contains height
;;DESTROYS: All, OP1, 1st byte of OP2
call GetRectLine
ld a, 12
sub c
ld e, a
ld d, 0
_rInvLoop1:
push de
ld de, OP1
push bc
ld b, c
_rInvLoop2:
ld a, (de)
xor (hl)
ld (hl), a
inc hl
inc de
djnz _rInvLoop2
pop bc
pop de
add hl, de
djnz _rInvLoop1
ret


GetRectLine:
;;IN:
;; D contains x
;; E contains width
;; H contains y
;; L contains height
;;OUT:
;; HL points to first byte of rectangle in buffer
;; B contains rows
;; C contains columns
;; OP1 [and possibly first byte of OP2] contains mask data for the line
xor a
or l
ret z ;return if height is zero
ld a, d
add a, e
cp d
ret z ;return if the width is zero
cp 96
jr c, _grl_widthOK ;if width is > 90
ld a, 96
_grl_widthOK:
dec a
ld e, a
call RectLineToOP1
;c contains width in bytes
;b contains first column
ld a, h
add a, l
add a, -64
jr nc, _grl_heightOK
neg
add a, l
ld l, a
_grl_heightOK:
ld a, l ;store height in a
ld l, h
ld h, 0
ld d, h
ld e, l
add hl, hl
add hl, de
add hl, hl
add hl, hl
ld e, b
add hl, de
; This next line gets the current buffer address into DE.
; Obviously zBufMode is the buffer flag in zModeFlags, and backBuffer holds the address of my backBuffer.
; Note that it uses $+# format because I use it normally in a #define. I've just written it out here for you to see.
bit zBufMode, (iy+zModeFlags) \ jr z, $+7 \ ld de, plotSScreen \ jr $+5 \ ld de, backBuffer
add hl, de ;hl points to first byte of rect in buffer
ld b, a ;b contains height, c contains width
ret


RectLineToOP1:
;;IN:
;; D contains starting x
;; E contains ending x
;;OUT:
;; C contains length of line
;; B contains starting x byte
;; OP1 [and possibly 1st byte of OP2] contains mask data for the line
;;DESTROYS: All except HL
ld a, e
cp d
ld b, 0
ret z
srl a
srl a
srl a
ld c, d
srl c
srl c
srl c
ld b, c
sub c ;a contains num bytes spanned minus 1
ld c, a
push bc
push hl
ld hl, OP1
;get mask
ld a, d
and 7
ld b, a
ld a, $FF
jr z, _skipmask
_maskloop:
sla a
djnz _maskloop
_skipmask:
ld b, c
ld c, a
xor a
or b
jr z, _lastbyte
ld a, c
_hloop:
ld (hl), a
inc hl
ld a, $FF
djnz _hloop
ld c, a
_lastbyte:
ld a, e
cpl
and 7
ld b, a
ld a, $FF
jr z, _skipmask2
_maskloop2:
add a, a
djnz _maskloop2
_skipmask2:
and c
ld (hl), a
pop hl
pop bc
inc c
ret

Honestly I'm not sure that these routines are even the best way to do it, but I feel they're pretty good. If anyone has better routines that I could swap these for, then I'd love to see them!


EDIT: Thanks to Calc84maniac, the bugs have been fixed and it now works properly!  ;D

300
Humour and Jokes / Re: POKÉMON IN REAL LIFE!
« on: July 01, 2011, 06:16:22 am »
Apparently he didn't play the Yellow version, because you CAN use Fly on Charizard in that one! ;)
I thought of that, too. I always taught Fly to my Charizard in Yellow.

Pages: 1 ... 18 19 [20] 21 22 ... 51