Вы находитесь на странице: 1из 16

.............................................................................................................................................

1
....................................................................................2
PHOTON 2 ............................................................................................................................ 4
................................................................5
CD QNX 4.............................................................................................. 6
................................................................................................................... 8
........................................................................................................................... 9
PHDITTO...................................................................................................................................... 10
VEDIT......................................................................................................... 11
PHOTON..........................................................................12
........................................................................................................................................ 13
MILLENIUM II......................................................................................................................... 16

.
, , "". .

- . :
localhost#./licgen wcc 6 6 666 >> /.licenses
. .

- . "" qnx .
( 4.25 , 4.24. )
:
"" 4.25
Proc32 .boot 4.25
.

1. py proc32 /.boot .
2. py dos ( os2)
3. y hiew.
4. p .
5. 0x000003F3 0x00000000.
.. ENOLIC EOK, p errno.h
6. py qnx.
7. py .
8. ppy qnx.
9. py, p photon, watcom.

=== Cut ===


0001DB77: 85C0 test eax,eax
0001DB79: 7507 jne 0001DB82 ---------- (2)
0001DB7B: B8F3030000 mov eax,0000003F3
0001DB80: 5E pop esi
0001DB81: C3 retn
0001DB82: 31C0 xor eax,eax
0001DB84: 5E pop esi
0001DB85: C3 retn
=== Cut ===
4.25 ,
/.altboot "Press ESC to load an alternate OS."
ESC.

, :

ph
phdev
phitk
phinx
phrt
vger
dejav
cogsd
motif
phica
phinx
qterm
rphin
sddph
sddqw
sjtfm
slngr
tcppp
tcprt
vedit
winrt
wcc
wpp
Photon 2 .
You need the environment variables PHOTON_PATH set to /usr/photon, and
PHFONT set to /dev/phfont .

Here are the files you will need:


/usr/photon/bin/Photon
/usr/photon/bin/phfont
/usr/photon/bin/phfontpfr
/usr/photon/bin/pwm
/usr/photon/bin/pdm
/usr/photon/bin/phlib_s11
/usr/photon/bin/phlib_render_11
/usr/photon/bin/Aplib_s11
(the following 5 files should be setup using fontcfg)
/usr/photon/font/fontdir
/usr/photon/font/fontext
/usr/photon/font/fontmap
/usr/photon/font/fontopt
/usr/photon/font/mappings
/usr/photon/font/phcursor.phf
(any fonts you will want to use, likely: helv 10 or 12 regular and bold)
/bin/Input (this is part of QNX, just ensure that it is there)
/usr/photon/keyboard/ (include any .kbd files you need to define keyboards)
/qnx4/photon/bin/crttrap
/qnx4/photon/bin/inputtrap

By my calculations these files will come in under 2.0 Megs.




/*

: liclear /usr/watcom/10.6/bin/wcc386
:
1. , 07
*/

#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <stdlib.h>

#define ERROR(x) { puts(x); exit(-1); }


char dont[]=" do not";

struct {
short unsigned type;
unsigned len;
} record;

main(int argc, char *argv[])


{
int h;
if(argc!=2) ERROR("no arg");
if((h=open(argv[1],O_RDWR))==-1) ERROR("open");

fputs("File ",stdout); fputs(argv[1],stdout);


for(;;)
{
if(read(h,&record,6)==-1) break;
if(record.type==7)
{ record.type=6;
lseek(h,-6,SEEK_CUR);
if(write(h,&record,6)==-1) break;
dont[0]=0;
break;
}
if(record.type==5) break;
if(lseek(h,record.len,SEEK_CUR)==-1) break;
}
close(h);
fputs(dont,stdout); fputs(" patched\n",stdout);
}
CD QNX 4.
, 'mkisofs'.
ftp://ftp.qnx.com/usr/free/qnx4/os/utils/misc/mkisofs-1.11.1.tgz. :

mkisofs. CD-ROM
ISO 9660. CD-ROM "El Torito".

mkisofs - ISO 9660.


,
ISO 9660, (CD-ROM).

mkisofs-1.11.1.tgz - "El-torito" .
- BIOS CD "El-Torito",
. :

1. ,
CD. . CD
,
.

2. 'mkisofs' ISO 9660


. , mkisofs,
, "El-Torito". ( ,
, , - -
QSSL).

3. , CD ,
, CD.
: Dosfsys Win95, Win95
"El-Torito" CD.

- . , . "El-Torito" - ,
"" a CD
, .

---------

1:

, qnx4
BIOS . ? - :
CD, QNX4, Fsys.floppy,
, , .

: CD Iso9660fsys
, CD. , -
Iso9660 QNX4.
, :(

, - Fsys ,
QNX4. .boot
, bootable CD.

, QNX NTO 2.1,


, .. FAT32.

-,
12.06.2000

2:

,
:
1) QNX4FS ( ,
90 Mb), , .

2) , "cp /dev/hdXt77 /qnxfsimage"

3) CD Image.

4) qnxfsimage /usr/local

5) /bin, /usr/bin ..

6) CD-R.

.. , image buildqnx Iso9660fsys cdrom


/cdrom, /bin, /usr/bin ..

Mike Gorchak
12.06.2000

---------

, , , .
.

Engineer
09.06.2000

: Oleg Kirichenko <Oleg.Kirichenko@p1.f50.n5045.z2.fidonet.org>
: [NTO]:
: 27 2000 . 19:15

27 Nov 00 19:08
Hello Nick!

, Nick Tukkel, All:

, H, , , ,
QNX4:

NT> 1. p pp ppp- ,
NT> p?

slay pppd

kill -SIGHUP pppd

NT> 2. p ,
NT>
NT> ppp-?

=== Cut ===


#!/bin/sh

SPEED=19200
INIT="ATZ|~AT&F1|~AT&N10"

/bin/stty baud=$SPEED bits=8 stopb=1 par=none -hupcl +raw </dev/ser1

modem -b $SPEED -d P8W200 -D /tmp/modem.log -i "$INIT" -m /dev/ser1 -c


"/usr/ucb/pppd /dev/ser1 $SPEED debug defaultroute require-ns user guest"
=== Cut ===

/etc/ppp/pap-secrets /etc/ppp/chap-secrets
- guest-guest

=== Cut ===


* guest guest
=== Cut ===

H, H.

+||-++|- | .. (423-2) 406041, 226869


+++-++-+ olegk@olegk.pp.ru | (423-2) 406029

: Vital Vershinin <Vital.Vershinin@p144.f20.n5021.z2.fidonet.org>
: [QNX4]
: 19 2001 . 10:36

, Paul!

At 17 Jan 01 23:49:57, Paul wrote to All:

P> .
P> return.

1) Pt_ARG_WINDOW_MANAGED_FLAGS Ph_WM_CLOSE
2) callback Pt_CB_WINDOW

int quit( PtWidget_t *widget, ApInfo_t *apinfo, PtCallbackInfo_t *cbinfo )


{
PhWindowEvent_t *we;

/* eliminate 'unreferenced' warnings */


widget = widget, apinfo = apinfo, cbinfo = cbinfo;

if(cbinfo->reason == Pt_CB_WINDOW) {
we = cbinfo->cbdata;
if ( we->event_f != Ph_WM_CLOSE ) return( Pt_CONTINUE );
}

if(user_prompt() == NEED_CLOSE)
exit(EXIT_SUCCESS);
return(Pt_CONTINUE);
}

user_prompt()
" , ? || |H|"

...

Stranger Vital
phditto
: alex cellarius <acellarius@qnx.com>
: how to run phditto
: 12 2000 . 08:58

I would like to set up a thin client using


phditto.
What is the requirements for running phditto?
I'm running the following to run ph on the
embedded system, and would like to see if I can
achieve running with less RAM if phditto is used
(This is a severely RAM constrained system-2MB)
How should I change the below to the minimum required
to access & run eveything on the remote server //2
using //1 only to run the bare essentials.

export PHOTON_PATH=/qnx4/photon
export PATH=$PATH:/qnx4/photon/bin

phlib_s11 &Aplib_s11 &


Photon -N /dev/photon &

Input kbd -R fd -d/dev/kbd ps2 -r kb -2

phfontphf -Enormal &

/qnx4/graphics/drivers/vesabios.ms -i0x12 &

/qnx4/graphics/drivers/Pg.vga4 -HNqnx/crt -g320x240x4 -A0xA0000,0x10000 -WB80 &


/qnx4/photon/bin/pterm -h200 -w280 &

Thanks for any help you can give.

--
Alex Cellarius
Systems 104 cc
South African Reseller of QNX
VEDIT
: SerB <ascsb@sniip.ntl.ru>
: Re: VEDIT
: 6 2000 . 14:10

!
, .
/qnx4/vedit/veditrc (vedrc)
.

if(Reg_Size(6) != 0) {
Config(H_IO_OPT, 8+16+32+64+128)
goto TERMMODE
}

Leonid Khait <lhait@diaspro.com> wrote in message


news:01c017a7$65903220$a56b18d5@khait...
> . : VEDIT
> pterm?
>
> .

!

Photon
( )

1) pterm
2) :
ditto -qk /dev/con1 ( photon)
exit

login: vasya

3) Photon, - ph.

Photon - . ,
. , phapps.

To use multiple monitors under Photon, you must be running at least version
1.13 of Photon which includes the Hydra.ms trapper/mode switcher.
For best results, both cards must be VESA 2.0 compliant. Although it is not
strictly neccessary, you will likely have less trouble if both cards are
identical. You must also have a PCI 2.1 motherboard, and the cards must be PCI
cards.
This method works by switching both cards into graphics mode and enabling a
linear frame buffer. Pg.flat or Pg.flatdc can then be used, both of which
only access the memory using the CPU... no accelleration is possible.
To start, go into your computers CMOS options, and check the following settings
if your computer has them: Palette Snooping == ON or Enabled
Plug and Play aware OS == OFF or disabled
Next, power down and put both cards in the machine. If your machine does not
boot, or it boots but there are problems even in text mode, do not call us.
You will need to get different cards or upgrade your motherboard.
To generate a trap file for use with Hydra.ms, go to the
/qnx4/graphics/drivers directory, and type the following: 'Hydra.ms -T >file'
This will invoke the Hydra.ms program in (T)rap mode. This mode will generate
a list of 'mode switcher;driver' commands for each mode and each card in the
system.This process may take some time, but you should see the secondary monitor
perform a video BIOS warm boot while the process is taking place. You will see
the signon screen that would be seen if this machine were booted with only the
secondary card installed.
You must ensure that nothing attempts to display text on your console screen
during the trap process, as well as during the mode switch that will occur
later when you go to run Photon.
If your machine hangs while trying to perform this trap, you're probably out
of luck. Assuming the trap is successful, your file should look something like
the following:
# Card 1, Bus 0, Dev/Func 90
Hydra.ms -S -i0x4100 -s0x0000,0x0090;Pg.flat -HC0x00000090 -PX -HNqnx/crt -g640x400x8
-A0xFF000000,0x400000 -WB640;#640,400,8,100,1,flat - SVGA 256 color
Hydra.ms -S -i0x4101 -s0x0000,0x0090;Pg.flat -HC0x00000090 -PX -HNqnx/crt -g640x480x8
-A0xFF000000,0x400000 -WB640;#640,480,8,100,1,flat - SVGA 256 color
Hydra.ms -S -i0x4103 -s0x0000,0x0090;Pg.flat -HC0x00000090 -PX -HNqnx/crt -g800x600x8
-A0xFF000000,0x400000 -WB1024;#800,600,8,100,1,flat - SVGA 256 color
Hydra.ms -S -i0x4105 -s0x0000,0x0090;Pg.flat -HC0x00000090 -PX -HNqnx/crt -g1024x768x8
-A0xFF000000,0x400000 -WB1024;#1024,768,8,100,1,flat - SVGA 256 color
Hydra.ms -S -i0x4107 -s0x0000,0x0090;Pg.flat -HC0x00000090 -PX -HNqnx/crt -g1280x1024x8
-A0xFF000000,0x400000 -WB1280;#1280,1024,8,100,1,flat - SVGA 256 color
Hydra.ms -S -i0x4110 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g640x480x16
-A0xFF000000,0x400000 -WB1280;#640,480,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x4111 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g640x480x16
-A0xFF000000,0x400000 -WB1280;#640,480,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x4112 -s0x0000,0x0090;Pg.flatdc32 -HC0x00000090 -PX -HNqnx/crt -g640x480x32
-A0xFF000000,0x400000 -WB2560;#640,480,32,100,1,flatdc32 - VGA hi-color
Hydra.ms -S -i0x4113 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g800x600x16
-A0xFF000000,0x400000 -WB1920;#800,600,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x4114 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g800x600x16
-A0xFF000000,0x400000 -WB1920;#800,600,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x4115 -s0x0000,0x0090;Pg.flatdc32 -HC0x00000090 -PX -HNqnx/crt -g800x600x32
-A0xFF000000,0x400000 -WB3200;#800,600,32,100,1,flatdc32 - VGA hi-color
Hydra.ms -S -i0x4116 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1024x768x16
-A0xFF000000,0x400000 -WB2048;#1024,768,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x4117 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1024x768x16
-A0xFF000000,0x400000 -WB2048;#1024,768,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x411C -s0x0000,0x0090;Pg.flat -HC0x00000090 -PX -HNqnx/crt -g1600x1200x8
-A0xFF000000,0x400000 -WB1664;#1600,1200,8,100,1,flat - SVGA 256 color
Hydra.ms -S -i0x4118 -s0x0000,0x0090;Pg.flatdc32 -HC0x00000090 -PX -HNqnx/crt -g1024x768x32
-A0xFF000000,0x400000 -WB4096;#1024,768,32,100,1,flatdc32 - VGA hi-color
Hydra.ms -S -i0x4119 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1280x1024x16
-A0xFF000000,0x400000 -WB2560;#1280,1024,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x411A -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1280x1024x16
-A0xFF000000,0x400000 -WB2560;#1280,1024,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x411D -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1600x1200x16
-A0xFF000000,0x400000 -WB3200;#1600,1200,16,100,1,flatdc - VGA hi-color
Hydra.ms -S -i0x411E -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1600x1200x16
-A0xFF000000,0x400000 -WB3200;#1600,1200,16,100,1,flatdc - VGA hi-color
# Card 2, Bus 0, Dev/Func 88
Hydra.ms -S -i0x4100 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flat -HC0x00000088 -PX -HNqnx/crt88 -g640x400x8
-A0xFE800000,0x400000 -WB640;
Hydra.ms -S -i0x4101 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flat -HC0x00000088 -PX -HNqnx/crt88 -g640x480x8
-A0xFE800000,0x400000 -WB640;
Hydra.ms -S -i0x4103 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flat -HC0x00000088 -PX -HNqnx/crt88 -g800x600x8
-A0xFE800000,0x400000 -WB960;
Hydra.ms -S -i0x4105 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flat -HC0x00000088 -PX -HNqnx/crt88 -g1024x768x8
-A0xFE800000,0x400000 -WB1024;
Hydra.ms -S -i0x4107 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flat -HC0x00000088 -PX -HNqnx/crt88
-g1280x1024x8 -A0xFE800000,0x400000 -WB1280;
Hydra.ms -S -i0x4110 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g640x480x16 -A0xFE800000,0x400000 -WB1280;
Hydra.ms -S -i0x4111 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g640x480x16 -A0xFE800000,0x400000 -WB1280;
Hydra.ms -S -i0x4112 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc32 -HC0x00000088 -PX -HNqnx/crt88
-g640x480x32 -A0xFE800000,0x400000 -WB2560;
Hydra.ms -S -i0x4113 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g800x600x16 -A0xFE800000,0x400000 -WB1920;
Hydra.ms -S -i0x4114 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g800x600x16 -A0xFE800000,0x400000 -WB1920;
Hydra.ms -S -i0x4115 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc32 -HC0x00000088 -PX -HNqnx/crt88
-g800x600x32 -A0xFE800000,0x400000 -WB3200;
Hydra.ms -S -i0x4116 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g1024x768x16 -A0xFE800000,0x400000 -WB2048;
Hydra.ms -S -i0x4117 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g1024x768x16 -A0xFE800000,0x400000 -WB2048;
Hydra.ms -S -i0x411C -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flat -HC0x00000088 -PX -HNqnx/crt88
-g1600x1200x8 -A0xFE800000,0x400000 -WB1600;
Hydra.ms -S -i0x4118 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc32 -HC0x00000088 -PX -HNqnx/crt88
-g1024x768x32 -A0xFE800000,0x400000 -WB4096;
Hydra.ms -S -i0x4119 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g1280x1024x16 -A0xFE800000,0x400000 -WB2560;
Hydra.ms -S -i0x411A -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g1280x1024x16 -A0xFE800000,0x400000 -WB2560;
Hydra.ms -S -i0x411D -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g1600x1200x16 -A0xFE800000,0x400000 -WB3200;
Hydra.ms -S -i0x411E -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g1600x1200x16 -A0xFE800000,0x400000 -WB3200;
Here's an analysis of one of the secondary trap lines:
Hydra.ms <-- name of mode switcher
-S <-- flag to tell it to perform a mode switch
-i0x4100 <-- which (VESA) mode number to switch to
-s0x0000,0x0088 <-- PCI bus,(PCI Device << 3) | PCI Function
-cnone <-- which console to 'hold' (none for secondary)
-nqnx/crt88; <-- name to register (based on PCI info)
Pg.flat <-- driver to run
-HC0x00000088 <-- Channel number (based on PCI info)
-PX <-- set palette using Xternal agent (i.e. Hydra.ms)
-HNqnx/crt88 <-- name to use when sending palette requests
-g640x400x8 <-- resolution/color depth
-A0xFE800000,0x400000 <-- Aperture/size info -WB640; <-- Bytes Per Scanline
You may have trouble trying to use a palette based mode since many (or most)
cards still use the VGA I/O registers to program the palette. It's probably
easiest to simply use 16 bit modes.
To run Photon, take one of the lines from the primary card...
Hydra.ms -S -i0x4117 -s0x0000,0x0090;Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1024x768x16
-A0xFF000000,0x400000 -WB2048;#1024,768,16,100,1,flatdc - VGA hi-color
...split it at the semicolon....Hydra.ms -S -i0x4117 -s0x0000,0x0090;
Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1024x768x16 -A0xFF000000,0x400000
-WB2048;#1024,768,16,100,1,flatdc - VGA hi-color
... stuff one of the secondary lines in the middle.....
Hydra.ms -S -i0x4117 -s0x0000,0x0090;
Hydra.ms -S -i0x4117 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc -HC0x00000088 -PX -HNqnx/crt88
-g1024x768x16 -A0xFE800000,0x400000 -WB2048;
Pg.flatdc -HC0x00000090 -PX -HNqnx/crt -g1024x768x16 -A0xFF000000,0x400000
-WB2048;#1024,768,16,100,1,flatdc - VGA hi-color
... and then sew the mess back together:
Hydra.ms -S -i0x4117 -s0x0000,0x0090;Hydra.ms -S -i0x4117 -s0x0000,0x0088 -cnone -nqnx/crt88;Pg.flatdc
-HC0x00000088 -PX -HNqnx/crt88 -g1024x768x16 -A0xFE800000,0x400000 -WB2048;Pg.flatdc -HC0x00000090
-PX -HNqnx/crt -g1024x768x16 -A0xFF000000,0x400000 -WB2048;#1024,768,16,100,1,flatdc - VGA hi-color
Make this the top line of your nodes trap file, and then just type 'ph'.
You probably want to move the second screen over to the right of the first
screen. Add a '-o' argument to the secondary cards driver command. In this case,
adding '-o1024' moves the second screen so it starts just to the right of the
first screen.
That should be it. Now that you have the graphics drivers running, you should be
able to figure out how to get multiple keyboards or multiple Photon sessions
running.
Millenium II
You need to do the following to fix the Millenium II and the Mystique 220
trap file problem.

** Note: Numbers will be different in your trap file. **

matbios.ms
-i0x101
-A0xFEDFC000 << This...
-S0x00800000
-B0xFD000008 << and this should be swapped
-M0x0000,120,-1,-1,0X00400000;
Pg.matrox
-HNqnx/crt
-g640x480x8
-A0xFEDFC000,0X800000 << Same thing here....
-WR0XFD000008 << and here
-WB640
-WM0X0000,120,-1,-1,0X00400000;

So you'd have:

* Notice that 8 at the end of the -B & -WR line has been changed to a 0

matbios.ms
-i0x101
-A0xFD000000
-S0x00800000
-B0xFEDFC000
-M0x0000,120,-1,-1,0X00400000;
Pg.matrox
-HNqnx/crt
-g640x480x8
-A0xFD00000,0X800000
-WR0XFEDFC000
-WB640
-WM0X0000,120,-1,-1,0X00400000;

... all on one line of course.