I had to make the following changes to the original (*.for) files: Because I had no f77 Compiler, but only a conversion programm f2c which converts .f Fortan files to C (I used SAS/C 6.51) (If there is anyone out there with a real f77 compiler for Amiga, try to compile the *.for directly, the binaries should probably be smaller than mine). First I had to remove all $ from the files (not included in the diff). I had to rename some variables (all changed begin with 'my') and finally I found out that f2c has one problem: It can't convert ascii to integer (and via versa) automatically as the f77 compiler can. This problem only occured in the pmtexb.f file. I used a dummy function (I don't know if there exists a ascii to integer function in Fortran, if you know mail me please!) ord and replaced it in the c file through atol. (Details see diff file below). So if you want to recompile it, either use the pmtexb.c file or use a real Fortran compiler. diffs between pmtexb.f and pmtexb.for: 322c322 < subroutine getchar(line,iccount,mychar) --- > subroutine getchar(line,iccount,char) 329c329 < character*1 mychar,s --- > character*1 char,s 338c338 < mychar = line(iccount:iccount) --- > char = line(iccount:iccount) 595c595 < subroutine notex(mynotex,lnote) --- > subroutine notex(notex,lnote) 600c600 < character*25 mynotex --- > character*25 notex 623c623 < mynotex =s//'ccc'//ud//' '//note --- > notex =s//'ccc'//ud//' '//note 626c626 < mynotex =s//'cc'//ud//' '//note --- > notex =s//'cc'//ud//' '//note 629c629 < mynotex =s//'c'//ud//' '//note --- > notex =s//'c'//ud//' '//note 631c631 < mynotex =s//'q'//ud//' '//note --- > notex =s//'q'//ud//' '//note 633c633 < mynotex =s//'h'//ud//' '//note --- > notex =s//'h'//ud//' '//note 635c635 < mynotex =s//'wh'//' '//note --- > notex =s//'wh'//' '//note 640c640 < mynotex =s//'c'//ud//'p'//' '//note --- > notex =s//'c'//ud//'p'//' '//note 642c642 < mynotex =s//'q'//ud//'p'//' '//note --- > notex =s//'q'//ud//'p'//' '//note 644c644 < mynotex =s//'h'//ud//'p'//' '//note --- > notex =s//'h'//ud//'p'//' '//note 646c646 < mynotex =s//'c'//ud//'p'//' '//note --- > notex =s//'c'//ud//'p'//' '//note 659c659 < mynotex = s//'sk' --- > notex = s//'sk' 661c661 < mynotex = s//'rlap{'//s//'qsk'//s//'pause}' --- > notex = s//'rlap{'//s//'qsk'//s//'pause}' 667c667 < mynotex = s//'ask' --- > notex = s//'ask' 670c670 < mynotex =s//'hs' --- > notex =s//'hs' 672c672 < mynotex =s//'qs' --- > notex =s//'qs' 674c674 < mynotex =s//'ds' --- > notex =s//'ds' 676c676 < mynotex =s//'qp' --- > notex =s//'qp' 678c678 < mynotex =s//'hpause' --- > notex =s//'hpause' 681c681 < mynotex =s//'pause' --- > notex =s//'pause' 808c808 < character*25 mynotex --- > character*25 notex 1091,1092c1091,1092 < call beamstrt(mynotex,lnote,nornb,ihornb) < call addstr(mynotex,lnote,sout,lsout) --- > call beamstrt(notex,lnote,nornb,ihornb) > call addstr(notex,lnote,sout,lsout) 1110c1110 < mynotex = s//'pince ' --- > notex = s//'pince ' 1113c1113 < mynotex=s//'mordant ' --- > notex=s//'mordant ' 1116c1116 < mynotex=s//'mtr ' --- > notex=s//'mtr ' 1119c1119 < call addstr(mynotex(1:lnote-1)//notef(ihorn),lnote, --- > call addstr(notex(1:lnote-1)//notef(ihorn),lnote, 1124c1124 < call beamn1(mynotex,lnote) --- > call beamn1(notex,lnote) 1129c1129 < call beamend(mynotex,lnote) --- > call beamend(notex,lnote) 1135c1135 < call beamid(mynotex,lnote) --- > call beamid(notex,lnote) 1138c1138 < call notex(mynotex,lnote) --- > call notex(notex,lnote) 1140c1140 < call addstr(mynotex,lnote,sout,lsout) --- > call addstr(notex,lnote,sout,lsout) 1215d1214 < integer tof,tofa 1219,1220c1218,1219 < nof = '0' < nofa = '-1' --- > nof = 0 > nofa = -1 1230,1235c1229,1232 < tof = ord(nof) < nof = char(tof+48) < if (tof .gt. 9) then < lnof = 2 < tof = ord(nof) < nof = '1'//char(tof-10+48) --- > nof = char(nof+48) > if (nof .gt. 9) then > lnof = 2 > nof = '1'//char(nof-10+48) 1237,1238c1234 < tofa=ord(nofa) < if (tofa .eq.-1) then --- > if (nofa .eq.-1) then 1241c1237 < else if (tofa .lt. 10) then --- > else if (nofa .lt. 10) then 1243c1239 < nofa = char(tofa+48) --- > nofa = char(nofa+48) 1246c1242 < nofa = '1'//char(tofa+38) --- > nofa = '1'//char(nofa+38) 1298,1303c1294,1295 < tof = ord(nof) < tof = tof+4 < nof = char(tof+48) < tofa = ord(nofa) < tofa = tofa+4 < nofa = char(tofa+48) --- > nof = nof+4 > nofa = nofa+4