Jump to content
Sign in to follow this  
GDMike

Assy prob. cant write text any longer

Recommended Posts

Up to this point ive been able to write TEXT and or values to the display in both text and graphic Modes. in this setting i had a kscan and if its eq to >2000 spacebar it will take me to this label and execute this routine. 

well ive pressed space, my command ran, as i tested my results and so i know this area runs, but i follow up with text "Finished" and i got no display characters saying finished. so i debug and tried disp any char and get nothing...but if i replace my LI r0,200 etc...with just a BLWP @ >0000 i get a warm boot as expected...

i had no probs disp text prior to kscan??

i reboot and rerun..i get all my text until i hit this label again..after pressing spacebar...

note: i rem'd out this entire sub prog and i do not get any text regardless. 

TT4 is a TEXT directive but ive tried other text methods..

IMG_20190701_215551622.jpg

IMG_20190701_214251342.jpg

Edited by GDMike

Share this post


Link to post
Share on other sites

i bypassed my kscan and went straight to trying to write text..the comp goes into lockup..damn its frustra...cause i was on the easy parts of my prgm..lol

the prg is 4120 bytes...

Edited by GDMike

Share this post


Link to post
Share on other sites

What's ADRTO defined as? My first guess is that your loop at INZO is corrupting the utility functions...

Also, why is that loop incrementing R5? It doesn't appear to use it -- is that a bug? Are R4 and R5 initialized?

 

 

Share this post


Link to post
Share on other sites

You have:

CRLP  MOV R4,*R10+

         INC R5

         INC R4

         CI R4,>FA0

         JLT CRLP

 

Should it be INCT R5 and INCT R4?

Or maybe MOVB R4,*r10+

  • Like 1

Share this post


Link to post
Share on other sites

What Senior Falcon said, we need some more information on what that routine is doing.

 

I thought at first your screen buffer was being written outside of with a line like LI R0,921, but I realized you're in text mode so that's valid. I'd advise using a mnemonic like SCRADR just to keep them cleaner.

 

Your KSCAN routine is slightly inefficient as well; you can do a CB @STATUS,@SPACEB to check the flag instead of moving and then shifting R0.

Share this post


Link to post
Share on other sites

Regarding your KSCAN routine at MENUK, it is best to test only the relevant bit(s) of STATUS. The following will do that:

MENUK  BLWP @KSCAN
       MOVB @STATUS,R0
       COC  @SPACEB,R0    ...presuming SPACEB contains >2000
       JNE  MENUK         ...since INZO is the next instruction, you need only one jump instruction
INZO

...lee

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...