RE: Question re ncurses and the various ttys

2006-10-12 Thread Murray Taylor
 

> -Original Message-
> From: Raaf [mailto:[EMAIL PROTECTED] 
> Sent: Friday, 13 October 2006 7:36 AM
> To: freebsd-questions@freebsd.org
> Cc: Murray Taylor
> Subject: Re: Question re ncurses and the various ttys
> 
> > Hi all
> > 
> > I've been digging around in the various man pages and 
> havent yet found
> > the 
> > incantations I require.
> > 
> > Goal: to create a curses driven status screen that can run 
> without user
> > intervention.
> > 
> > I want to know if it is possible to _programatically_ switch to an
> > unused 
> > virtual tty,
> 
> Yes it is certainly possible, i have done this recently 
> myself and like
> you i couldn't find how to do it in any man page. Fortunately 
> i could find
> the answer in the xorg-server source code.
> 
> You just open one of the virtual terminals and issue the VT_ACTIVATE
> ioctl:
> 
> fd = open("/dev/ttyv9",O_RDONLY);
> ioctl(fd,VT_ACTIVATE,10);
> 
> > and then use this as the display page.
> > ( By unused I mean marked 'off' in /etc/ttys )
> 
> 
> Well, the above code only switches the active vt...
> 
> If you want your program output to go to a certain vt you 
> probably have
> to open the specific vt and replace the stdin and stdout file 
> descriptors
> of your program with the one of the one of the vt you just opened.
> 
> But there are probably some caveats to this method, so best 
> is to take a
> look at the getty source code and maybe add your program to /etc/ttys.
> 

Thank you - this is probably the incantation I need along with the 
curses newterm / setterm calls

cheers
mjt

 
---
The information transmitted in this e-mail is for the exclusive
use of the intended addressee and may contain confidential
and/or privileged material. Any review, re-transmission,
dissemination or other use of it, or the taking of any action
in reliance upon this information by persons and/or entities
other than the intended recipient is prohibited. If you
received this in error, please inform the sender and/or
addressee immediately and delete the material. 

E-mails may not be secure, may contain computer viruses and
may be corrupted in transmission. Please carefully check this
e-mail (and any attachment) accordingly. No warranties are
given and no liability is accepted for any loss or damage
caused by such matters.
---

### This e-mail message has been scanned for Viruses by Bytecraft ###
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Question re ncurses and the various ttys

2006-10-12 Thread Raaf
> Hi all
> 
> I've been digging around in the various man pages and havent yet found
> the 
> incantations I require.
> 
> Goal: to create a curses driven status screen that can run without user
> intervention.
> 
> I want to know if it is possible to _programatically_ switch to an
> unused 
> virtual tty,

Yes it is certainly possible, i have done this recently myself and like
you i couldn't find how to do it in any man page. Fortunately i could find
the answer in the xorg-server source code.

You just open one of the virtual terminals and issue the VT_ACTIVATE
ioctl:

fd = open("/dev/ttyv9",O_RDONLY);
ioctl(fd,VT_ACTIVATE,10);

> and then use this as the display page.
> ( By unused I mean marked 'off' in /etc/ttys )


Well, the above code only switches the active vt...

If you want your program output to go to a certain vt you probably have
to open the specific vt and replace the stdin and stdout file descriptors
of your program with the one of the one of the vt you just opened.

But there are probably some caveats to this method, so best is to take a
look at the getty source code and maybe add your program to /etc/ttys.

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Question re ncurses and the various ttys

2006-10-12 Thread Derek Ragona

You should be able to do this, provided the perms are set right on that device.

-Derek


At 10:24 PM 10/11/2006, Murray Taylor wrote:

Hi all

I've been digging around in the various man pages and havent yet found
the
incantations I require.

Goal: to create a curses driven status screen that can run without user
intervention.

I want to know if it is possible to _programatically_ switch to an
unused
virtual tty, and then use this as the display page.
( By unused I mean marked 'off' in /etc/ttys )

So if I set ttyv7 to off, can I launch a program (possibly from
a cold boot) that selects tty7 ( ie the now getty-less terminal ),
possibly sets the rows and cols like th ecommand line vidcontrol can,
and then continues executing a curses app ?

I can write the curses bit.

Can I execute vidcontrol(1) via a system(3) call and make it stick after
the
call returns or does it only affect the environment within the call.

Can I programtically do the same as Alt-F8 to preselect my screen?
Will the curses output go onto this selected screen or would it go
to the initial console screen? (Hmm maybe that is part of the answer,
in the form of "Does curses output only go to the current console?"

( ... am I even on the right track ?? )



Murray Taylor

Special Projects Engineer
Bytecraft Systems

--

"Any intelligent fool can make things bigger and more complex... It
takes a
touch of genius - and a lot of courage to move in the opposite
direction."
--Albert Einstein

---
The information transmitted in this e-mail is for the exclusive
use of the intended addressee and may contain confidential
and/or privileged material. Any review, re-transmission,
dissemination or other use of it, or the taking of any action
in reliance upon this information by persons and/or entities
other than the intended recipient is prohibited. If you
received this in error, please inform the sender and/or
addressee immediately and delete the material.

E-mails may not be secure, may contain computer viruses and
may be corrupted in transmission. Please carefully check this
e-mail (and any attachment) accordingly. No warranties are
given and no liability is accepted for any loss or damage
caused by such matters.
---

### This e-mail message has been scanned for Viruses by Bytecraft ###
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
MailScanner thanks transtec Computers for their support.


--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
MailScanner thanks transtec Computers for their support.

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Question re ncurses and the various ttys

2006-10-11 Thread perryh
> I want to know if it is possible to _programatically_ switch to
> an unused virtual tty, and then use this as the display page.
> ( By unused I mean marked 'off' in /etc/ttys )
>
> So if I set ttyv7 to off, can I launch a program (possibly from 
> a cold boot) that selects tty7 ( ie the now getty-less terminal ),
> possibly sets the rows and cols like th ecommand line vidcontrol
> can, and then continues executing a curses app ? 
...
> Can I programtically do the same as Alt-F8 to preselect my screen?

It must be possible, because it's what xdm (the X-windows login
screen) does.  Check out the ttyv8 line in /etc/ttys.  (xdm puts
the vt into a graphic mode rather than leaving it in text mode,
but the allocation and control issues are presumably similar.)
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"