	character ch*1
	call pgbegin(0,"/xw",1,1)
	call pgsch(0.0)
	call pgenv(-1.,34.,23.,-1.,0,0)
	call pgsch(0.93)
	write(*,*)
        write(*,*)' ----- use mouse_key -----------'
	write(*,*)
	write(*,*)' left  ---> forward'
        write(*,*)' right ---> backward'
        write(*,*)' middle---> exit'
	write(*,*)
	write(*,*)' you should copy han.24 han.48 in PG_DIR'
	write(*,*)
	write(*,*)'	integer a(5)'
	write(*,*)'	data a/2590,2850,4476,4636,4408/'
	write(*,*)'	call pgbegin(0,"?",1,1)'
	write(*,*)'c                 answer:  /xw  or  /lh'
	write(*,*)'	call pgenv(0.,10.,0.,10.,0,0)'
	write(*,*)'	call pgxchinese(0.,5.,a,5,0,0)'
	write(*,*)'	call pg4chinese(3.,5.,a,5,0,0)'
	write(*,*)'	call pg4chinese(5.,5.,a,5,0,1)'
	write(*,*)'	call pg4chinese(7.,5.,a,5,2,0)'
	write(*,*)'	call pg4chinese(5.,7.,a,5,4,0)'
	write(*,*)'	call pgend'
	write(*,*)'	end'
	
	ip=1600
100	if(ip.lt.0)ip=0
	if(ip.gt.8400)ip=8400
        call dis_page(ip)
	call pgcurse(x,y,ch)	
        if(ch.eq.'A')ip=ip+400
	if(ch.eq.'D')stop
	if(ch.eq.'X')ip=ip-400
	goto 100 
	end

	subroutine dis_page(jp)
	integer a(94),d(26)
	byte b1(100),b2(100),b3(100)
	character*100 c1,c2,c3
	equivalence (b1,c1),(b2,c2),(b3,c3)
	call pgeras
	do 5 i=1,100
	b1(i)=32
	b2(i)=32
5	b3(i)=32
	do 6 i=1,32
	k=i*3
	b1(k)=(i/10)+48
	b1(k+1)=mod(i,10)+48
	j=i+32
	b2(k)=(j/10)+48
	b2(k+1)=mod(j,10)+48
	if(i.gt.30)goto 6
	j=i+64
	b3(k)=(j/10)+48
	b3(k+1)=mod(j,10)+48
6	continue
	ip=jp
        b1(1)=ip/1000+48
	b1(2)=mod(ip,1000)/100+48
	b2(1)=b1(1)
	b2(2)=b1(2)
	b3(1)=b1(1)
	b3(2)=b1(2)
	do 10 i=1,96
10	a(i)=ip+i
	call pgxchinese(0.,0.,a(1),32,0,0)
	call pgtext(-0.48,0.6,c1)
	call pgxchinese(0.,2.,a(33),32,0,0)
	call pgtext(-0.48,2.6,c2)
	call pgxchinese(0.,4.,a(65),30,0,0)
	call pgtext(-0.48,4.6,c3)
	ip=ip+100
        b1(1)=ip/1000+48
	b1(2)=mod(ip,1000)/100+48
	b2(1)=b1(1)
	b2(2)=b1(2)
	b3(1)=b1(1)
	b3(2)=b1(2)
	do 20 i=1,96
20	a(i)=ip+i
	call pgxchinese(0.,6.,a(1),32,0,0)
	call pgtext(-0.38,6.6,c1)
	call pgxchinese(0.,8.,a(33),32,0,0)
	call pgtext(-0.38,8.6,c2)
	call pgxchinese(0.,10.,a(65),30,0,0)
	call pgtext(-0.38,10.6,c3)
	ip=ip+100
        b1(1)=ip/1000+48
	b1(2)=mod(ip,1000)/100+48
	b2(1)=b1(1)
	b2(2)=b1(2)
	b3(1)=b1(1)
	b3(2)=b1(2)
	do 30 i=1,96
30	a(i)=ip+i
	call pgxchinese(0.,12.,a(1),32,0,0)
	call pgtext(-0.38,12.6,c1)
	call pgxchinese(0.,14.,a(33),32,0,0)
	call pgtext(-0.38,14.6,c2)
	call pgxchinese(0.,16.,a(65),30,0,0)
	call pgtext(-0.38,16.6,c3)
	ip=ip+100
        b1(1)=ip/1000+48
	b1(2)=mod(ip,1000)/100+48
	b2(1)=b1(1)
	b2(2)=b1(2)
	b3(1)=b1(1)
	b3(2)=b1(2)
	do 40 i=1,96
40	a(i)=ip+i
	call pgxchinese(0.,18.,a(1),32,0,0)
	call pgtext(-0.38,18.6,c1)
	call pgxchinese(0.,20.,a(33),32,0,0)
	call pgtext(-0.38,20.6,c2)
	call pgxchinese(0.,22.,a(65),30,0,0)
	call pgtext(-0.38,22.6,c3)

        do 50 i=1,26
50	d(i)=1203+i
	if(jp.eq.1600)then
          call pgxchinese(-1.,0.,d(1),1,0,0)
          call pgxchinese(-1.,2.,d(2),1,0,0)
          call pgxchinese(-1.,14.,d(3),1,0,0)
	endif
	if(jp.eq.2000)then
          call pgxchinese(-1.,0.,d(3),1,0,0)
          call pgxchinese(-1.,4.,d(4),1,0,0)
          call pgxchinese(-1.,16.,d(5),1,0,0)
          call pgxchinese(-1.,18.,d(6),1,0,0)
	endif
	if(jp.eq.2400)then
          call pgxchinese(-1.,0.,d(6),1,0,0)
          call pgxchinese(-1.,2.,d(7),1,0,0)
          call pgxchinese(-1.,10.,d(8),1,0,0)
          call pgxchinese(-1.,22.,d(10),1,0,0)
	endif
	if(jp.eq.2800)then
          call pgxchinese(-1.,0.,d(10),1,0,0)
          call pgxchinese(-1.,18.,d(11),1,0,0)
	endif
	if(jp.eq.3200)then
          call pgxchinese(-1.,0.,d(12),1,0,0)
          call pgxchinese(-1.,16.,d(13),1,0,0)
	endif
	if(jp.eq.3600)then
          call pgxchinese(-1.,0.,d(13),1,0,0)
          call pgxchinese(-1.,2.,d(14),1,0,0)
          call pgxchinese(-1.,6.,d(15),1,0,0)
          call pgxchinese(-1.,8.,d(16),1,0,0)
          call pgxchinese(-1.,14.,d(17),1,0,0)
	endif
	if(jp.eq.4000)then
          call pgxchinese(-1.,0.,d(18),1,0,0)
          call pgxchinese(-1.,4.,d(19),1,0,0)
          call pgxchinese(-1.,22.,d(20),1,0,0)
	endif
	if(jp.eq.4400)then
          call pgxchinese(-1.,0.,d(20),1,0,0)
          call pgxchinese(-1.,8.,d(23),1,0,0)
          call pgxchinese(-1.,16.,d(24),1,0,0)
	endif
	if(jp.eq.4800)then
          call pgxchinese(-1.,0.,d(24),1,0,0)
          call pgxchinese(-1.,6.,d(25),1,0,0)
	endif
	if(jp.eq.5200)then
          call pgxchinese(-1.,0.,d(25),1,0,0)
          call pgxchinese(-1.,2.,d(26),1,0,0)
	endif
	end
