~ FB_LATSYM.BCK43 FB_LATSYM.BCK)BACK/LOG/VERIF [.DECUS] FB_LATSYM.BCK/SAV JOLIN ԔsGV5.3 _VSRJ::  _$1$DUA5: V5.3 ~ 7"*[JOLIN.LATSYM.DECUS]$$$LISEZ.MOI;1+,7./ 4O-d0123KPWO56jN7@jN8@G99ĽGHJ FB_LATSYM =========Fall Back LatsymCVous trouverez ci-joint un exemple de modif. (patch) de latsym pour8desaccentuer les caracteres d'une imprimante type LA120.IEpluchez les .com, il y en a un qui fait le patch, et l'autre qui fait laMcompil et le link de l'image partageable appellee, et qui deplace tout ce qui7faut (fb_latsym et fboutput) vers les bons repertoires.GPour utiliser fb_latsym, faire un $ init/queue/processor=fb_latsym ....NAttention : le patch de latsym depend des versions de latsym... Ne pas essayerK de le passer sur une autre version que celle specifiee dans le  texte du patch.N Si vous avez des doutes vous devriez pouvoir utiliser directement  les .exe fournis.FOn peut aussi utiliser la meme methode pour mapper differement le jeux3multinational de DEC (on utilise les routines NCS).H------------------------------------------------------------------------Remarque tres importante...---------------------------ECe symbiont tourne chez moi depuis plus d'un an et n'a jamais pose deOprobleme... (je n'ai pas patche le symbiont de la 5.3, j'utilise toujours celui de la 5.2) ENeanmoins je degage toute responsabilite en cas de probleme lie a ce *symbiont. Aucune maintenance n'est prevue.9Vous pouvez me contacter par mail sur la messagerie decusDECUSF::JOLIN_RRemi Jolin - TAT.)*[JOLIN.LATSYM.DECUS]BUILD-FB-LATSYM.COM;2+,9./ 47&-d0123KPWO56L78%L8x99ĽGHJ$ v = f$verify(1)7$! Installation de LATSYM patche pour faire du fallback$!$ macro fboutput /obj=fboutput%$ link/share/notrace/nodebug fboutput$! $ set noon,$ copy/log fb_latsym.exe sys$common:[sysexe]+$ copy/log fboutput.exe sys$common:[syslib]$!$ v = 'f$verify(v)$ exit"*[JOLIN.LATSYM.DECUS]FBOUTPUT.EXE;1+,+9 ./ 4l-d0123 KPWO56 L7`hL8`@99ĽGHJ 0DX0205(L FBOUTPUTV1.0-09L05-05   !Dt NCSSHR_001!  LBRSHR_001! LIBRTL_001ЏPѼ 7PݬݬMulti_to_NoDiacriticals@@`T`H @NCSSHRLBRSHRLIBRTL 7FBOUTPUTV1.0-027-JUN-1990 15:3927-JUN-1990 15:39VAX-11 Linker V05-05 .$$ABS$$."*[JOLIN.LATSYM.DECUS]FBOUTPUT.MAR;1+,8./ 46r-d0123KPWO56px(7 ^ L8 99ĽGHJ .title Fall_back_PRINT_SYMBIONT .ident 'V1.0-0' ; VMS V5.0 .library /SYS$LIBRARY:LIB/ $PSMDEF $SMBDEF $DSCDEFREQUEST_ID = 4 WORK_AREA = 8 FUNC = 12FUNC_DESC_1 = 16FUNC_ARG_1 = 20FUNC_DESC_2 = 24FUNC_ARG_2 = 28;) .psect DATA, LONG, RD, WRT, NOEXE, NOSHRCF_ID: .long 0 LENGTH: .word CF_NAME_D:! .ascid \Multi_to_NoDiacriticals\;' .psect CODE, LONG, RD, NOWRT, EXE, SHR .entry OUTPUT_FILTER, ^m<> movl #ss$_normal, r0 cmpl @FUNC(ap), #PSM$K_FORMAT bneq 20$; tstl CF_ID bneq 10$6; cfid = 0, on fait l'init de la routine de conversion pushal CF_NAME_D pushal CF_ID calls #2, G^NCS$GET_CF blbc r0, 20$;10$: pushal LENGTH pushl FUNC_DESC_2(ap) pushl FUNC_DESC_1(ap) pushal CF_ID calls #4, G^NCS$CONVERT; blbc r0, 20$; movw LENGTH, @FUNC_DESC_2(ap);20$: ret; .end OUTPUT_FILTER"*[JOLIN.LATSYM.DECUS]FBOUTPUT.OBJ;1+,8./ 4oj-d0123KPWO56 KL7`*L8`+99ĽGHJGFALL_BACK_PRINT_SYMBIONTV1.0-027-JUN-1990 15:39 VAX MACRO V5.0-9MACRO FBOUTPUT/OBJ=FBOUTPUT "FALL_BACK_PRINT_SYMBIONT/ NCS$CONVERT NCS$GET_CF SS$_NORMAL . ABS .P$ABS$ PPP%DATAAP 3Multi_to_NoDiacriticalsQ&QGCODEP  OUTPUT_FILTER&o SS$_NORMALPѼ 7 NCS$GET_CFPݬݬ NCS$CONVERT OUTPUT_FILTER&DATA%CODEG-*[JOLIN.LATSYM.DECUS]PATCH_LATSYM_FB_V52.COM;4+,3./ 4N-d0123KPWO56WBP7:MP8*99ĽGHJ '$ patch LATSYM-v52.EXE/output=fb_latsym!-! RJ 12-jan-1990 Modif. pour latsym v5.1-006 N! link date/time: 6-OCT-1989 08:26:50.054! (latvms052.a)8! RJ 30-mar-1989 Remplace OUTPUT_FILTER routine ! d'apres :/! JPP0001 16-JUL-1988 Replace JOB_SETUP routine&! This involves mapping of an image!! Operating system: VMS V5.0M! ce patch est fait sur la premiere instruction du symbiont (addr_transf + 2)! set eco 101define SYS$IMGACT = 7FFEDF90define SYS$IMGFIX = 7FFEE400define PSM$K_OUTPUT_FILTER = 06define IAC$M_MERGE = 100define IAC$M_EXPREG = 20 'define FLAGS = IAC$M_MERGE+IAC$M_EXPREGdefine IHD$W_ACTIVOFF = 02insert/instruction 0b42-' movab @l^7b00,r4' ! Previous instruction#' movq r2, -(sp)' ! Save registers' movl sp, r3'' pushl #20204558' !^a/XE /' pushl #452E3A45' !^a/E:.E/' pushl #52414853' !^a/SHAR/' pushl #24535953' !^a/SYS$/!' pushl sp' ! Address of dflnam(' movzwl #0F, -(sp)' ! Length of dflnam(' movl sp, r0' ! Address of descriptor' pushl #54555054' !^a/TPUT/' pushl #554F4246' !^a/FBOU/' pushl sp' ! Address of name%' movzwl #8, -(sp)' ! Length of name(' movl sp, r1' ! Address of descriptor*' subl #200, sp' ! Space for image header*' movl sp, r2' ! Address of image header ' clrq -(sp)' ! Null arguments ' clrq -(sp)' ! Null arguments' pushl #FLAGS' ! imgctl' pushl r2' ! hdrbuf' pushl r0' ! dflnam' pushl r1' ! name' calls #8, @#SYS$IMGACT'' calls #0, @#SYS$IMGFIX'"' movl (r2), r1' ! Address of IHD>' movzwl w^IHD$W_ACTIVOFF(r1), r0' ! Offset to activation data.' addl2 r1, r0' ! Address of transfer vector5' movl (r0), r0' ! Address of routine (first vector)(' movl r3, sp' ! Restore stack pointer&' movq (sp)+, r2' ! Restore registers$' pushl r0' ! Pass routine address)' movl #PSM$K_OUTPUT_FILTER, b^10(sp)'' pushab b^10(sp)'#' calls #02, (r4)' ! PSM$REPLACEexitupdatepQRGa~ FB_LATSYM.BCKk FB_LATSYM.BCK)BACK/LOG/VERIF [.DECUS] FB_LATSYM.BCK/SAV JOLIN ԔsGV5.3 _VSRJ::  _$1$DUA5: V5.3 ~ 7"*[JOLIN.LATSYM.DECUS]$$$LISEZ.MOI;1+,7./ 4O-d0123KPWO56jN7@jN8@G99ĽGHJ FB_LATSYM =========Fall Back LatsymCVous trouverez ci-joint un exemple de modif. (patch) de latsym pour8desaccentuer les caracteres d'une imprimante type LA120.IEpluchez les .com, il y en a un qui fait le patch, et l'autre qui fait laMcompil et le link de l'image partageable appellee, et qui deplace tout ce qui7faut (fb_latsym et fboutput) vers les bons repertoires.GPour utiliser fb_latsym, faire un $ init/queue/processor=fb_latsym ....NAttention : le patch de latsym depend des versions de latsym... Ne pas essayerK de le passer sur une autre version que celle specifiee dans le  texte du patch.N Si vous avez des doutes vous devriez pouvoir utiliser directement  les .exe fournis.FOn peut aussi utiliser la meme methode pour mapper differement le jeux3multinational de DEC (on utilise les routines NCS).H------------------------------------------------------------------------Remarque tres importante...---------------------------ECe symbiont tourne chez moi depuis plus d'un an et n'a jamais pose deOprobleme... (je n'ai pas patche le symbiont de la 5.3, j'utilise toujours celui de la 5.2) ENeanmoins je degage toute responsabilite en cas de probleme lie a ce *symbiont. Aucune maintenance n'est prevue.9Vous pouvez me contacter par mail sur la messagerie decusDECUSF::JOLIN_RRemi Jolin - TAT.)*[JOLIN.LATSYM.DECUS]BUILD-FB-LATSYM.COM;2+,9./ 47&-d0123KPWO56L78%L8x99ĽGHJ$ v = f$verify(1)7$! Installation de LATSYM patche pour faire du fallback$!$ macro fboutput /obj=fboutput%$ link/share/notrace/nodebug fboutput$! $ set noon,$ copy/log fb_latsym.exe sys$common:[sysexe]+$ copy/log fboutput.exe sys$common:[syslib]$!$ v = 'f$verify(v)$ exit"*[JOLIN.LATSYM.DECUS]FBOUTPUT.EXE;1+,+9 ./ 4l-d0123 KPWO56 L7`hL8`@99ĽGHJ 0DX0205(L FBOUTPUTV1.0-09L05-05   !Dt NCSSHR_001!  LBRSHR_001! LIBRTL_001ЏPѼ 7PݬݬMulti_to_NoDiacriticals@@`T`H @NCSSHRLBRSHRLIBRTL 7FBOUTPUTV1.0-027-JUN-1990 15:3927-JUN-1990 15:39VAX-11 Linker V05-05 .$$ABS$$."*[JOLIN.LATSYM.DECUS]FBOUTPUT.MAR;1+,8./ 46r-d0123KPWO56px(7 ^ L8 99ĽGHJ .title Fall_back_PRINT_SYMBIONT .ident 'V1.0-0' ; VMS V5.0 .library /SYS$LIBRARY:LIB/ $PSMDEF $SMBDEF $DSCDEFREQUEST_ID = 4 WORK_AREA = 8 FUNC = 12FUNC_DESC_1 = 16FUNC_ARG_1 = 20FUNC_DESC_2 = 24FUNC_ARG_2 = 28;) .psect DATA, LONG, RD, WRT, NOEXE, NOSHRCF_ID: .long 0 LENGTH: .word CF_NAME_D:! .ascid \Multi_to_NoDiacriticals\;' .psect CODE, LONG, RD, NOWRT, EXE, SHR .entry OUTPUT_FILTER, ^m<> movl #ss$_normal, r0 cmpl @FUNC(ap), #PSM$K_FORMAT bneq 20$; tstl CF_ID bneq 10$6; cfid = 0, on fait l'init de la routine de conversion pushal CF_NAME_D pushal CF_ID calls #2, G^NCS$GET_CF blbc r0, 20$;10$: pushal LENGTH pushl FUNC_DESC_2(ap) pushl FUNC_DESC_1(ap) pushal CF_ID calls #4, G^NCS$CONVERT; blbc r0, 20$; movw LENGTH, @FUNC_DESC_2(ap);20$: ret; .end OUTPUT_FILTER"*[JOLIN.LATSYM.DECUS]FBOUTPUT.OBJ;1+,8./ 4oj-d0123KPWO56 KL7`*L8`+99ĽGHJGFALL_BACK_PRINT_SYMBIONTV1.0-027-JUN-1990 15:39 VAX MACRO V5.0-9MACRO FBOUTPUT/OBJ=FBOUTPUT "FALL_BACK_PRINT_SYMBIONT/ NCS$CONVERT NCS$GET_CF SS$_NORMAL . ABS .P$ABS$ PPP%DATAAP 3Multi_to_NoDiacriticalsQ&QGCODEP  OUTPUT_FILTER&o SS$_NORMALPѼ 7 NCS$GET_CFPݬݬ NCS$CONVERT OUTPUT_FILTER&DATA%CODEG-*[JOLIN.LATSYM.DECUS]PATCH_LATSYM_FB_V52.COM;4+,3./ 4N-d0123KPWO56WBP7:MP8*99ĽGHJ '$ patch LATSYM-v52.EXE/output=fb_latsym!-! RJ 12-jan-1990 Modif. pour latsym v5.1-006 N! link date/time: 6-OCT-1989 08:26:50.054! (latvms052.a)8! RJ 30-mar-1989 Remplace OUTPUT_FILTER routine ! d'apres :/! JPP0001 16-JUL-1988 Replace JOB_SETUP routine&! This involves mapping of an image!! Operating system: VMS V5.0M! ce patch est fait sur la premiere instruction du symbiont (addr_transf + 2)! set eco 101define SYS$IMGACT = 7FFEDF90define SYS$IMGFIX = 7FFEE400define PSM$K_OUTPUT_FILTER = 06define IAC$M_MERGE = 100define IAC$M_EXPREG = 20 'define FLAGS = IAC$M_MERGE+IAC$M_EXPREGdefine IHD$W_ACTIVOFF = 02insert/instruction 0b42-' movab @l^7b00,r4' ! Previous instruction#' movq r2, -(sp)' ! Save registers' movl sp, r3'' pushl #20204558' !^a/XE /' pushl #452E3A45' !^a/E:.E/' pushl #52414853' !^a/SHAR/' pushl #24535953' !^a/SYS$/!' pushl sp' ! Address of dflnam(' movzwl #0F, -(sp)' ! Length of dflnam(' movl sp, r0' ! Address of descriptor' pushl #54555054' !^a/TPUT/' pushl #554F4246' !^a/FBOU/' pushl sp' ! Address of name%' movzwl #8, -(sp)' ! Length of name(' movl sp, r1' ! Address of descriptor*' subl #200, sp' ! Space for image header*' movl sp, r2' ! Address of image header ' clrq -(sp)' ! Null arguments ' clrq -(sp)' ! Null arguments' pushl #FLAGS' ! imgctl' pushl r2' ! hdrbuf' pushl r0' ! dflnam' pushl r1' ! name' calls #8, @#SYS$IMGACT'' calls #0, @#SYS$IMGFIX'"' movl (r2), r1' ! Address of IHD>' movzwl w^IHD$W_ACTIVOFF(r1), r0' ! Offset to activation data.' addl2 r1, r0' ! Address of transfer vector5' movl (r0), r0' ! Address of routine (first vector)(' movl r3, sp' ! Restore stack pointer&' movq (sp)+, r2' ! Restore registers$' pushl r0' ! Pass routine address)' movl #PSM$K_OUTPUT_FILTER, b^10(sp)'' pushab b^10(sp)'#' calls #02, (r4)' ! PSM$REPLACEexitupdatepQ