10 call erase call high(1) call center(20,1,14,'This is a test') call center(20,2,14,'This is a test') call frame(1,3,80,19) call wide(24) call show(1,24,20,' Scrolling regions') call scroll(20,23) call flush do 100 i = 1,20 100 type 101,i,i 101 format(' Decimal = ',i4,' Octal = ',O5) call show(1,24,35,' With forward, and reverse indexing') call pcurs(1,23) do 130 j = 1,4 do 110 i = 1,6 110 call rvindx do 120 i = 1,6 120 call indx 130 continue call scroll call show(2,4,30,'With simple graphics available') do 200 i = 2,79 f = i / (3.14159 * 3.0) j = ((I/79.) * 25.0 * sin(f)) + 25 ix = 16 - (j / 5) il = "163 - mod (iabs(j),5) call graph(i,ix,il) 200 continue call show(2,5,15,'With 80 columns') call flush call wait(1,2) call scr132 call high(1) call center(33,1,14,'Or 132 columns') call center(33,2,14,'Or 132 columns') call frame(1,3,132,19) do 300 i = 2,131 f = i / (3.14159 * 1.0) j = ((I/131.) * 25.0 * sin(f)) + 25 ix = 16 - (j / 5) il = "163 - mod (iabs(j),5) call graph(i,ix,il) 300 continue call flush call wait(1,2) call scr80 call flush 800 call wait(1,2) call show(1,1,15,'Erase functions') call show(1,2,38,'From cursor to end of line -**********') call pcurs(29,2) call flush call wait(1,2) call erase(10) call flush call wait(1,2) call show(1,3,43,'**********-From beginning of line to cursor') call pcurs(10,3) call flush call wait(1,2) call erase(11) call flush call wait(1,2) call show(1,4,18,'Or the entire line') call pcurs(10,4) call flush call wait(1,2) call erase(12) call flush call wait(1,2) call erase call show(1,1,37,'There are also screen erase functions') call flush call wait(1,2) call filscr call pcurs(40,12) call savcur call flush call wait(1,2) call erase(0) call show(20,20,33,'From the cursor to end of screen') call rescur call flush call wait(1,2) call filscr call pcurs(40,12) call savcur call flush call wait(1,2) call erase(1) call show(20,4,37,'From the top of screen to the cursor') call rescur call flush call wait(1,2) call filscr call pcurs(40,12) call savcur call flush call wait(1,2) call erase(2) call center(40,12,20,'Or the entire screen') call rescur call flush call wait(1,2) call erase call setatr(0) call setatr(1) call setatr(4) call setatr(5) call setatr(7) call show(1,1,20,'Character attributes') call setatr call setatr(1) call show(1,2,4,'Bold') call setatr call setatr(4) call show(1,3,9,'Underline') call setatr call setatr(5) call show(1,4,5,'Blink') call setatr call setatr(7) call show(1,5,13,'Reverse Video') call setatr call flush call wait(5,2) call erase call pcurs(1,23) call savcur call setatr(1) call high(1) call center(20,1,11,'End of test') call center(20,2,11,'End of test') call rescur call flush call exit end subroutine filscr character*40 screen data screen/'****************************************'/ do 100 i = 1,24 call show( 1, i,40,screen) call show(40, i,40,screen) 100 continue return end