someone made the following program for me. i need to know how to get dcs7 on my calculator, and where to stick this program within it. I have never done this before so i'm a bit uncomfortable about it... but anyway....


Code:

.nolist
#include "dcs7brass.inc"
.list
   .org $9D95
   .db 0BBh,06Dh
   
    LD HL, myhook
    LD DE, AppBackupScreen
    LD BC, myhookend-myhook
    ldir
    LD HL, AppBackupScreen
    in A, (6)
    ;bcall 4FABh      ;Homescreen hook enable
    ;bcall 5026h      ;Parser hook enable
    bcall 4F66h      ;Raw key hook enable
    ret

myhook:
    .db 83h             ; Required for all hooks
    set 4,(IY+0Ch)
    or a
    ret

myhookend:
Hi 4444, welcome to Cemetech! May I recommend that you Introduce Yourself in the relevant topic? You'll want to use the Doors CS SDK to compile this program (which is in source code form currently) into a .8xp program that you can load onto your calculator. You can grab the SDK here:

http://www.ticalc.org/archives/files/fileinfo/341/34192.html

Once you have it set up, the PDF in there will explain the rest, or we can help you compile the program.

Edit: Also, unfortunately, this won't work. Sad Hooks cannot (easily) be used by userspace programs.
FWIW, here was my attempt at the same thing. A little bit of debugging in PTI revealed it seemed to be working OK, just crashing quickly for some reason, and my interest in debugging quickly waned..

Code:
.binarymode TI8X
 
CurAble = 2
CurOn = 3
CurLock = 4
CurFlags = 12
 
appBackupScreen = $9872
TSRcode = appBackupScreen
TSRvectors = $9900
 
.org $9D93
.db $bb,$6d
start:
    ld de,TSRcode
    ld hl,ISR
    ld bc,ISR_end - ISR
    ldir
   
    ld hl,TSRcode
    ld (TSRvectors), hl
    ld hl,TSRvectors
    ld de,TSRvectors + 2
    ld bc, 254
    ldir
   
    ld a, TSRvectors >> 8
    ld i, a
    im 2
    ret
   
ISR:
    set CurLock, (IY+CurFlags)
    jp $0038
ISR_end:
below may be the answer. this is from another forum. they said something about $83 that made no sense to me.


"Thanks a ton, Souvik! Although I would change one small thing... I would _not_ run this from DCS, for the main reason that it is a RAM hook, and anything you do on your calculator that messes with AppBackupScreen (games, shells, etc) is going to mess it up, and could cause crashes if that first byte of AppBackupScreen is $83. That is so, because TI OS decides that a hook is working correctly if that first byte is $83. So pretty much... if you want to waste a lot of space (16*1024 - 3 bytes, I think), you could make this an app and not worry about it ever messing up anything, crash-wise. But this will get you what you need I was wondering, what were you going to use this for? Some sort of prank? If so, I would recommend blocking the app menu and keeping people from running program

Thanks again, Souvik, for signing up and answering "
Then the other forum doesn't know what they're talking about. Smile There are tons of things that mess up AppBackupScreen, so I wouldn't put this in AppBackupScreen, instead of not running it from Doors CS. Let me think about what a good safeRAM area would be.
ramCode is a pretty safe bet unless something writes to Flash. The most reliable (and biggest waste of space) is to write a tiny app that does nothing but install such a hook, allowing the OS to handle cases where you get moved around, but that seems like a subpar solution.
i should have mentioned the full point in the program is just to stop the cursor from blinking as it drives me nuts.
KermMartian wrote:
Then the other forum doesn't know what they're talking about. Smile There are tons of things that mess up AppBackupScreen, so I wouldn't put this in AppBackupScreen, instead of not running it from Doors CS. Let me think about what a good safeRAM area would be.

Sad For reference, http://www.devhardware.com/forums/ti-83-84-102/any-way-to-stop-ti83-cursor-from-blinking-342263.html#post995659

I recommended AppBackupScreen because it is where I put my quick RAM hooks when I need / want to try something. Also, it was such a small program I didn't want to use a whole flash page. But meh.
4444 wrote:
i should have mentioned the full point in the program is just to stop the cursor from blinking as it drives me nuts.
Indeed, that was clear to me from the topic title and from the code. Smile I'm curious if you just set the no-blink flag, without a keyhook, how long it will stay until some OS call resets it...

_player: Not recommended, as shells and apps and games use that space. Smile That's an interesting question: 4444, do you playing any games, or normally use any apps or shells?
It stays until you enter a menu, then it is right back when you exit.
_player1537 wrote:
It stays until you enter a menu, then it is right back when you exit.
Gotcha, thanks for checking that. There's actually a few safe RAM areas, such as (as _player mentioned) iMathPtrs that are more or less safe unless you run games.
I created a program that disables the cursor. I will post it a little later. Smile

Edit: Create a new program (PRGM-LEFT-ENTER), and name the program KILLCURS. Then, when you are inside the editor, press 2nd-0, scroll down to AsmPrgm, and press ENTER twice. Then, type FDCB0CE6FDCB0CCEFDCB0CDEC9.
Press 2nd-MODE to return to the homescreen. Then, to run the program, run prgmKILLCURS. You can do this with DCS's HomeRun feature, or by pressing 2nd-0, scrolling down to Asm(, pressing ENTER, and then typing prgmKILLCURS.

This is the asm source for the program.

Code:
.org $9d93
.db $BB,$6D
set 4,(iy+$0C)
set 1,(iy+$0C)
set 3,(iy+$0C)
ret
no, i just use it for math, graphing all that. I'm really not interested in ever making the calculator do anything special.
4444 wrote:
no, i just use it for math, graphing all that. I'm really not interested in ever making the calculator do anything special.
Ah, that's fair enough. The program that Souvik just posted (which you can run with the Homerun feature of Doors CS) should do nicely for you, then.
Note that my program's effects are not permanent, some OS functions will cause the cursor flags to be reset. My program only works on the homescreen.
souvik1997 wrote:
Note that my program's effects are not permanent, some OS functions will cause the cursor flags to be reset. My program only works on the homescreen.
Indeed, but I think that's basically exactly what 4444 wanted, unless I misunderstood.
no i want it to be permanent and i want it to work on every screen. i hate seeing that stupid thing blink.
4444 wrote:
no i want it to be permanent and i want it to work on every screen. i hate seeing that stupid thing blink.
Have you tried any of these solutions? Another idea would be to edit the font to make the solid black block a blank. Smile
One thing that you _could_ do is use either Omnicalc's or zStart's custom font feature. Then, you could just edit the character that the cursor uses to be completely white.
Either that, or if you want it to be REALLY permanent, no matter what apps there are, you could get one of these programmers to modify the OS so it never allows the cursor to blink. e.g., never changes the flag to where it blinks again.
  
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 2
» 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