[A83] Re: Inverting on home screen


[Prev][Next][Index][Thread]

[A83] Re: Inverting on home screen




When you display a string on the screen with _puts, which I assume you are doing, then that string is only displayed on the screen and not copied to some location in Ram like textShad or something.

If you want to invert the text you display, you should use
   set 3,(iy+5)   ; equated to textinverse or something
before you call _puts. Afterwards you should reset this flag.

   ld  hl,text
   set 3,(iy+5)
   bcall(_puts)
   res 3,(iy+5)
   ret
text:
   .db "inverted text",0

So if you want an item to be highlighted, it is best to redisplay it with the mentioned flag set.


> ----------------------------------------
> From: Andrey Gorlin <ag_silver_83p@ameritech.net>
> Sent: Tue Oct 23 06:56:10 GMT+02:00 2001
> To: <assembly-83@lists.ticalc.org>
> Subject: [A83] Re: Inverting on home screen
> 
> 
> 
> I still do not quite understand how it works, especially since it does not
> work in my program.  Perhaps I ought to be more specific:
> I'm trying to make a menu where by going up/down, your selection gets
> highlighted.  So, now I need to invert 32 spaces or 16, but I can figure
> that out myself.  I looked in the SDK, but I still do not understand exactly
> how textshadow works.
> -Is it updated right away?
> -Is it cleared when "fastcopy" is called?
> -How can I change something in it at a certain point?
> 
> ----- Original Message -----
> From: "David Phillips" <david@acz.org>
> To: <assembly-83@lists.ticalc.org>
> Sent: Friday, October 19, 2001 11:25 PM
> Subject: [A83] Re: Inverting on home screen
> 
> 
> >
> >  ld hl,_textShadow
> >  ld b,10
> > xor_screen:
> >  ld a,' '
> >  xor (hl)
> >  ld (hl),a
> >  djnz xor_screen
> >
> > > What is the simplest way to xor 10 consecutive spaces on the home screen
> > in a MirageOS program?
> >
> >
> >
> >
> 
> 
> 

-----------------------------------------------------
Mail.be, Free WebMail and Virtual Office
http://www.mail.be