Sound like a lot of progress so far!

P.S. Chip, WTF did you do to you avatar?
Thanks.

Hehehe. It symbolizes my current attitude towards asm. It's a beast. Laughing
Yeah, I like that; I might adopt it. Smile

Sweet that you made good progress.
I probably would have finished if it weren't for this hang up. Before you had posted that I had resorted to sigmas routine, and found out that his mask is the inverse of yours, so I got all confused. Hopefully, I can easily incoorporate this and finish this thing. It's so dang close.

Edit: Also, I only used 19 bytes of appbackupscreen. 16 of that is for the mouse, the rest is for a greyscale timer, a cursor blinking timer, and x and y coordinates for the cursor. I think that's small enough.

Edit2: Kerm, I'm going to need a little bit more help on this one. I've never worked with masked sprites before and they are behaving strangely on me (or at least different than how I thought they would after you described them). Here's some test code I've been using to try to get a grasp of them before I use them in the program.


Code:
ld a,20
   ld l,20
   ld b,8
   ld ix,test
   call iPutSpriteMask
   bcall(_grbufcpy)
   bcall(_getkey)
   ret

test:
   .db %00000000
   .db %01111110
   .db %01000010
   .db %01000010
   .db %01000010
   .db %01000010
   .db %01111110
   .db %00000000
testMask:
   .db %11111111
   .db %10000001
   .db %10000001
   .db %11000001
   .db %11000001
   .db %10000001
   .db %10000001
   .db %11111111

; Ion Extended Routines by Joe Wingbermuehle and Kerm Martian

;Inputs: Exactly the same as iPutSprite, but with 16 bytes at ix.

iPutSpriteMask:
   ld   e,l
   ld   h,$00
   ld   d,h
   add   hl,de
   add   hl,de
   add   hl,hl
   add   hl,hl
   ld   e,a
   and   $07
   ld   c,a
   srl   e
   srl   e
   srl   e
   add   hl,de
   ld   de,gbuf
   add   hl,de
iPutSpriteLoop1Mask:
   ld   d,(ix)
   ld   e,$FF
   ld   a,c
   or   a
   jr   z,iPutSpriteSkip1Mask
iPutSpriteLoop2Mask:
   srl   d
   rr   e
   set 7,d
   dec   a
   jr   nz,iPutSpriteLoop2Mask
iPutSpriteSkip1Mask:
   ld   a,(hl)
   and   d
   ld   (hl),a
   inc   hl
   ld   a,(hl)
   and   e
   ld   (hl),a
   push ix
   dec hl
   ld de,8
   add ix,de
iPutSpriteLoop1AND:
   ld   d,(ix)
   ld   e,$00
   ld   a,c
   or   a
   jr   z,iPutSpriteSkip1AND
iPutSpriteLoop2AND:
   srl   d
   rr   e
   dec   a
   jr   nz,iPutSpriteLoop2AND
iPutSpriteSkip1AND:
   ld   a,(hl)
   xor   d
   ld   (hl),a
   inc   hl
   ld   a,(hl)
   xor   e
   ld   (hl),a

   pop ix
   ld   de,$0B
   add   hl,de
   inc   ix
   djnz   iPutSpriteLoop1Mask
   ret


The problem is that this outputs


Code:

;%11111111
;%10000001
;%10000001
;%11000001
;%11000001
;%10000001
;%10000001
;%11111111


Which I, think is incorrect, give what you said before that the black parts of the mask are transparent, and the white parts opaque. Perhaps I'm misunderstanding something here.
I think I may have accidentally given you some incorrect information. The mask goes first, then the icon, not the other way around.
Kerm, to be perfectly honest with you: I want to slap you! Mad

Oh well, people make mistakes. I won't bear a grudge...for too long. Smile
Chipmaster wrote:
Kerm, to be perfectly honest with you: I want to slap you! Mad

Oh well, people make mistakes. I won't bear a grudge...for too long. Smile
Sad Really sorry about that, seriously. Hope I didn't cost you too much time. Smile
Yea, that cost me a *lot* of time. I now have to turn everything backwards almost Laughing Probably lost about 3 hours because of it. But at least everything's working now. I was getting so mad at myself for not being able to figure out what was wrong. I think I almost made sigma's routine work for mask coming after sprite Laughing

Alright, well now all that needs to be done is the toggling of a pixel state.
wow, impressive work. I should hvae just had you look at http://www.cemetech.net/doorscs/docs/source/dcs6.asm , at the bottom, where the mouse sprite is. Sad
It's alright. Almost finished with the last part, and it's clocking in at about 650 bytes with the extra sprite routine. Cut that, and it's down to around 550. Cool
Very, very nice job. I have the options menu all ready for it. Smile I just need to make the main mouse routine recognize this, and we'll be all set.
Do you want me to include an ok button at the bottom that the user can scroll to and select? Or will hitting enter be enough?
Hitting enter would be totally fine. Smile That would make it much easier for everyone.
Alright. Just one last bug to fix, and optimization and I should have this for you by tomorrow *looks at time*...I mean today Laughing
Heh, good morning everyone. Today's menu of choice: the options menu. Screenies in about an hour.
Edit: here we are. I need to create the link and about items, then start actually making the menus' options do stuff.
looks very nice. Very Happy

I don't think you saw one of my questions a couple pages back... XD

Anyways, I am wondering, will you be getting rid of the X off the desktop, and make room for the Archive space available icon?? Now that the start button works, and you get the power options to function, there really would be no point to the X. just my opinion. Feel free to disregard it. Smile
Nah, I like the idea of an easy quit. The reason I added that in the first place was people said they didn't like having to go to start, shutdown, shutdown to TIOS in order to quit. If people don't know the [CLEAR] shortcut, this makes it so much easier for them.
Maybe you could make an option to toggle easy quiit, so if you're a butterfingers (like me) you won't hit Clear and accidentally exit out.
Also, make an option to pres ON to shut off the calc like MOS does.
netham45 wrote:
Also, make an option to pres ON to shut off the calc like MOS does.
That's already there. Smile Try pressing ON in the latest public beta. I can't guarantee that that's stable though...
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
» Goto page Previous  1, 2, 3, 4, 5, 6  Next
» View previous topic :: View next topic  
Page 4 of 6
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement