I need to know how to define key groups for the 83+. I've looked in ti83plus.inc and the .pdf documents that came with the 83+ SDK, but I can't find how to define them anywhere. Tutorial 14 of ASM Guru tells how to define key groups on the 83, but aren't memory adresses different on the 83+?
Key groups aren't memory addresses, they're values inputted and outputted to the keyboard's microcontroller. Bottom line, you can use the TI-83 values from ASMGuru. If you'd prefer more TI-83+ specific info (even though it's the same) try ASM in 28 Days./
The program assembled without errors, but then I sent it to PTI and either the program froze when I executed it or keypress isn't being detected.

Here's how groups were used in ASM Guru (from Tutorial 14):


Code:
Keys:
  ld a,0ffh          ;resets the keypad.
  out (1),a         ;'Required syntax' :)
  ld a,0feh          ;Enable group 1.
  out (1),a          
  in a,(1)          ;'Required Syntax'
  cp kDown          
  jp z,down          
  ld a,0ffh          ;Reset keypad again.
  out (1),a
  ld a,0fdh          ;Enable group 2.
  out (1),a
  in a,(1)
  cp kEnter
  jp z,Enter
  jp nz,keys


Here's some of the code I assembled and executed:

Code:
Looper:
   ld a,0ffh   ;reset key groups
   out (1),a
   ld a,0feh   ;group 1
   out (1),a
   in a,(1)
   cp $04
   jr z,Up
   cp $03
   jr z,Right
   cp $01
   jr z,Down
   cp $02
   jr z,Left
   ld a,0fdh   ;group 2
   out (1),a
   in a,(1)
   cp $0F
   jp z,Exit 


I couldn't find anything on key groups in ASM in 28 Days though.
direct input (key groups) discussed right here in learn asm in 28 days -> http://nwps.ws/~dragonfire/Asmin28/lesson/day22.html <-
Technically you should have a nop \ nop between an out and a following in.
shouldn't the # of nops go to 6 in hyper SE mode? just wondering
Hrrm, probably, but I haven't heard anything about it.
Liazon wrote:
shouldn't the # of nops go to 6 in hyper SE mode? just wondering
*5. 15 MHz / 6MHz = 5/2. 2*(5/2) = 5 nops.
Quote:
direct input (key groups) discussed right here in learn asm in 28 days -> http://nwps.ws/~dragonfire/Asmin28/lesson/day22.html <-


Thanks Kllrnohj, it worked. Smile
  
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
Page 1 of 1
» 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