Cobol Foro

Cobol Foro (https://www.cobolforo.es/index.php)
-   RM/COBOL (https://www.cobolforo.es/forumdisplay.php?f=16)
-   -   [Duda] RM/COBOL en Linux (https://www.cobolforo.es/showthread.php?t=1149)

Dasije 19 de mayo de 2020 00:55

RM/COBOL en Linux
 
Hola @JCantero

He visto que tienes experiencia manejando RM/COBOL con Linux.

He estado haciendo pruebas con Ubuntu Server y RM/COBOL 7.x en Linux, la verdad funciona bien, menos los detalles de pantalla, cambiando el vt del terminal a 220, se consigue que sea más compatible las teclas y caracteres de la pantalla, pero no queda compatible del todo.

¿Que distribuición/Versión de Linux y que configuración es más fiel para ser emulado, por ejemplo para después usarlo desde desde SSH a través del Putty.

Saludos.

Kuk 19 de mayo de 2020 10:13

Cita:

Citación del post de Dasije (Mensaje 5708)
Putty

MobaXterm Home Edition - COBOL Foro
;)

JCantero 19 de mayo de 2020 12:24

Buenas,

Yo ahora estoy con la version congelada 12.x tanto en windows como en linux. Algunos usuarios estan todavia con la ver 5.x y otros que les gusta el WOW (por el tema de menus y ventanas graficas ) con ver 7.x y siguientes.

Tengo ficheros de configuración diferentes pero el programa en si, es el mismo.

Pero no con la versión 12.x, desde la 5.xx que llevo trasteando con rmcobol (dos, windows 3.1, unix, xenix, SCO. etc )

Y es totalmente compatible. Caracteres gráficos, eñes, acentos, etc.

Comentame que es lo que no te funciona para poder ayudarte.

Seguramente es mas configurar el telnet que el rmcobol

Concretamente en linux tengo vt220. Como telnet putty (modificado por mi y recompilado[*]) y netterm. Este último lo he tenido mucho tiempo pero ya lo he reemplazado por putty ya que he implementado en pujtty cosas que hacia netterm que no contempla putty[*] (si alguien esta interesado paso información o abro otro hilo y explico).

Prueba esto con Putty y me dices:

terminal Vt220
Configura el fuente "Lucida console" ya que dispone de todos los simbolos necesarios, otros contemplan unos pero no otros.

Como aqui no se pueden pegar imagenes ahora preparo un documento de como yo lo tengo configurado para ir rápido al mismo estado que yo tengo y puedas probar.

Ahora te copio el .cfg que utilizo para ejecutar el runtime.

Código CPP:
  1. TERM-INTERFACE TERMINFO
  2. TERM-ATTR data-characters=32,255
  3. TERM-INPUT    action=left-arrow        kcub1
  4. TERM-INPUT    action=right-arrow       kcuf1
  5. TERM-INPUT    action=backspace precedence=1  kbs
  6. TERM-INPUT    action=set-rm-insertion  kich1
  7. TERM-INPUT    action=delete-character  kdch1
  8. TERM-INPUT    action=erase-entire      kclr
  9. TERM-INPUT    code=01 exception=yes    kf1
  10. TERM-INPUT    code=02 exception=yes    kf2
  11. TERM-INPUT    code=03 exception=yes    kf3
  12. TERM-INPUT    code=04 exception=yes    kf4
  13. TERM-INPUT    code=05 exception=yes    kf5
  14. TERM-INPUT    code=06 exception=yes    kf6
  15. TERM-INPUT    code=07 exception=yes    kf7
  16. TERM-INPUT    code=08 exception=yes    kf8
  17. TERM-INPUT    code=09 exception=yes    kf9
  18. TERM-INPUT    code=10 exception=yes    kf10
  19. TERM-INPUT    code=11 exception=yes    lf1
  20. TERM-INPUT    code=12 exception=yes    lf2
  21. TERM-INPUT    code=13 exception=yes    lf3
  22. TERM-INPUT    code=14 exception=yes    kf14
  23. TERM-INPUT    code=15 exception=yes    lf5
  24. TERM-INPUT    code=16 exception=yes    lf6
  25. TERM-INPUT    code=17 exception=yes    lf7
  26. TERM-INPUT    code=18 exception=yes    lf8
  27. TERM-INPUT    code=19 exception=yes    lf9
  28. TERM-INPUT    code=20 exception=yes    lf10
  29. TERM-INPUT    code=40 exception=yes    kf0
  30. TERM-INPUT    code=41 exception=yes    ka3
  31. TERM-INPUT    code=49 exception=yes    lf0
  32. TERM-INPUT    code=52 exception=yes    kcuu1
  33. TERM-INPUT    code=53 exception=yes    kcud1
  34. TERM-INPUT    code=54 exception=yes    khome
  35. TERM-INPUT    code=56 exception=yes    kcl
  36. TERM-INPUT    action=erase-remainder code=57 exception=yes    kel
  37. TERM-INPUT    code=58 exception=yes    kc3
  38. TERM-INPUT    code=59 exception=yes    kill
  39. TERM-INPUT    code=61 exception=yes    kdl1
  40. TERM-INPUT    code=64 exception=yes    kb2
  41. TERM-INPUT    code=67 exception=yes    kpp
  42. TERM-INPUT    code=68 exception=yes    knp
  43. TERM-INPUT    code=82 exception=yes    ka1
  44. DEFINE-DEVICE device=PRINTER path="lp -s" pipe=yes
  45. DEFINE-DEVICE device=local path="implocal" pipe=yes
  46. DEFINE-DEVICE device=visor path="visorlinux" pipe=yes
  47. DEFINE-DEVICE device=visorps path="visorpslinux" pipe=yes
  48. DEFINE-DEVICE device=visor6 path="visorps6" pipe=yes
  49. DEFINE-DEVICE device=visor8 path="visorps8" pipe=yes
  50. DEFINE-DEVICE device=localj path="implocalj" pipe=yes
  51. DEFINE-DEVICE device=visordos path="visordos" pipe=ye


---------- Post añadido : 11:37 ---------- Post anterior : 11:16 ----------

Configuración completa de putty para ejecutar los programas.

Si quieres te puedo exportar el registro para que tu lo importes (.reg).

(Este es un fichero con configuracion de las pantallas)

https://we.tl/t-VeAHKfglqq

---------- Post añadido : 12:24 ---------- Post anterior : 11:44 ----------


Nitzer 19 de mayo de 2020 13:36

Madre mia , madre mia, me habéis hecho retrotraerme en el tiempo, me he visto incluso mas joven, que recuerdos :)

Luego no queremos que nos digan..... si es que, como somos. Auténticos dinosaurios.

Yo trabajé con Slackware 4.0 y RM/Cobol 6.0 creo que por el 1994 y durante unos 4-5 años.

Dasije 19 de mayo de 2020 17:03

Gracias por contestar @JCantero.

La configuración de RM/COBOL que me has enviado funciona todo menos los colores.

Por el otro lado, siguiendo los pasos del Putty, los acentos y caracteres especiales (lineas, cuadrados), no se muestran correctamente, te pego varios ejemplos:

Elija la opci¢n deseada. Pulse "Esc" par cancelar ... [ ]

Código:

ÚÄÄ¿
 ³    ³
 ³    ³
 ÀÄÙÛ

Donde debe verse las lineas y uniones de sus esquinas.

Por lo demás, son programas compilados con las versiones de MS-DOS, en la versión 5.x, y las pantallas hechas con displays.

Desde Putty, la versión es la Release 0.73, imagino que usas Telnet, en mi caso SSH, no se recomiendan usar telnet por seguridad.

El cambio de terminal, lo hago desde la consola con el comando:
Código Bash:
  1. export TERM=vt220

Saludos y gracias.

JCantero 19 de mayo de 2020 19:31

@Dasije, si claro, puedes utilizar el putty con ssh, eso no cambia nada.

Lo primero que tienes que hacer es configurar un conexión nueva, para no tocar la que tienes con los aspectos que te he marcado en la respuesta anterior y ver que cambios observas ( si lo ves mejor o peor )

Configuración una conexion del putty con estas caracteristicas y parametros:

https://we.tl/t-VeAHKfglqq

---------- Post añadido : 19:08 ---------- Post anterior : 18:59 ----------

Asegurate que pones el fuente "Lucida Console" para ver como te sale

---------- Post añadido : 19:31 ---------- Post anterior : 19:08 ----------


Dasije 19 de mayo de 2020 20:43

3 Archivos Adjunto(s)
Hola de nuevo.

He instalado Putty en otro PC, he configurado como tal viene tu ejemplo en el word que has hecho.

Pero sigue sin quedar bien.

Te he mandado tres capturas, de como queda en MS-DOS, Windows y en Linux.

¿Interfiere parámetros del sistema operativo?, por eso quería replicar lo que se conoce que ya funciona bien.

Saludos.

JCantero 20 de mayo de 2020 00:26

Sin modificar los fuentes y no tener que recompilar puedes probar a poner la fuente "Netterm Oem" en el putty.

Ahí vienen los caracteres gráficos pero no lo acentos.

Para disponer de la fuente "netterm oem", lo mas rápido es instalar el netterm desde su página.

Downloads - InterSoft International, Inc.

Kuk 20 de mayo de 2020 08:33

@Dasije, has probado con MobaXterm?

JCantero 20 de mayo de 2020 12:59

Cita:

Citación del post de Kuk (Mensaje 5724)
@Dasije, has probado con MobaXterm?

Ayer me lo instalé y estuve mirando.

Me conecte, con la opción putty y el aspecto visual es igual y todo funciona igual menos, logicamente, lo que yo he modificado en putty.

@Kuk, Hay alguna opción que tu hayas probado diferente a esa ?

El problema gráfico de @Dasije, creo que lo soluciona con el fuente "Netterm oem", pero los acentos no. ( bien con el putty o con Mobaxterm )

Para solucionar todos los problemas (acentos, graficos eñes) hay que buscar un fuente que lo lleve todo. Yo utilizo "Lucida console", pero para ello tiene que modificar los fuentes de cobol en algunos aspectos.

---------- Post añadido : 12:59 ---------- Post anterior : 12:57 ----------

@Dasije, ¿ que versión de rmcobol utilizas para linux ?

Dasije 20 de mayo de 2020 16:30

1 Archivos Adjunto(s)
Perfecto, era la fuente, muestra todo, incluso los acentos.

Os dejo captura.

La versión es la 7.10 para Linux/Intel, y lo he compilado con la 6.10 de MS-DOS.

Gracias a tod@s.

Dasije 20 de mayo de 2020 16:43

No me he dado cuenta, no están todos los acentos, le é por ejemplo no está, al menos ya sabemos que es la fuente lo que define el aspecto gráfico si se hace a pelo desde el editor de programación.

Roger 20 de mayo de 2020 21:54

1 Archivos Adjunto(s)
@Dasije si es la fuente utilizaba esta fuente sys437.fon les comparto si les sirve

Dasije 21 de mayo de 2020 01:15

@Roger, Gracias por su ayuda, la fuente que adjuntas, no se muestra correctamente, me recuerda a la misma fuente que utiliza RM/COBOL en su versión de Windows para mostrar líneas y caracteres, debe ser para Windows, no para Unix/Linux.

Kuk 21 de mayo de 2020 14:00

@JCantero, Moba trae fuente propia, que al menos en UTF-8 muestra todos los gráficos correctamente. Pero yo hablo de Shell en sí, nunca he utilizado RM.

JCantero 21 de mayo de 2020 15:54

Cita:

Citación del post de Dasije (Mensaje 5728)
No me he dado cuenta, no están todos los acentos, le é por ejemplo no está, al menos ya sabemos que es la fuente lo que define el aspecto gráfico si se hace a pelo desde el editor de programación.

Has puesto "Lucida Console"?

Comprueba en la linea de comandos de linux todas las vocales acentuadas (mayusculas y minusculas). Te deben de salir bien.

En cuanto a rm/cobol tienes que tener en cuenta que los caracteres:

UTF áéíóúÁÉÍÓÚÑñºªçÇ

En window-dos áéíóú╡É╓αΘñѺªçÇ

En Linux ßΘφ≤·┴╔═╙┌±╤║¬τ╟

Cada font tiene sus carateres defininidos.
Estos--> !"·$%&/()=?¿-.,;:_ 0234567890 a..z A..Z suelen ser los mismos.
Pero no siempre.
El resto son diferentes

Yo para mensajes y volcado de pantallas tengo unas rutinas que hacen la conversion dependiendo el sistema.

Código COBOL:
  1.  
  2.       01 cadena-windows pic x(70) value 'áéíóú╡É╓αΘñѺªçÇ'.
  3.       01 cadena-unix       pic x(70) value 'ßΘφ≤·┴╔═╙┌±╤║¬τ╟'.
  4.  
  5.        *
  6.       *
  7.       *
  8.  
  9.       if unix then
  10.             inspect variable-alfanumerica  converting
  11.                   cadena-windows to cadena-unix
  12.       end-if.


---------- Post añadido : 15:54 ---------- Post anterior : 15:49 ----------

Cita:

Citación del post de Kuk (Mensaje 5731)
@JCantero, Moba trae fuente propia, que al menos en UTF-8 muestra todos los gráficos correctamente. Pero yo hablo de Shell en sí, nunca he utilizado RM.

Rm/cobol no utiliza UTF en linux ( o al menos no lo he visto )

Kuk 21 de mayo de 2020 16:56

Cita:

Citación del post de JCantero (Mensaje 5732)
Rm/cobol no utiliza UTF en linux

Ya, en general, al menos nosotros, no necesitamos caracteres multi-byte (a no ser que alguien esté haciendo programas para venta en Emirates o similar :D )

Pero bueno, quiero decir que la propia fuente de Moba nunca me ha dado problemas. Es para que probéis, por si a caso funciona.

JCantero 21 de mayo de 2020 18:33

Cita:

Citación del post de Kuk (Mensaje 5734)
Ya, en general, al menos nosotros, no necesitamos caracteres multi-byte (a no ser que alguien esté haciendo programas para venta en Emirates o similar :D )

Pero bueno, quiero decir que la propia fuente de Moba nunca me ha dado problemas. Es para que probéis, por si a caso funciona.


Con Moba funciona bien, ya sea con "lucida console" o con el "moba". He cambiando el chaset a CP437, si no en rmcobol no va bien

Tambien me funcionan perfectamente todas las Fx, eñes y los acentos.

Lo que no me funciona son las cosas que he implementado en Putty

Voy a remitir mis plegarias a ver si me hacen caso como a ti los de MF. (jajajjajjajajaj)

Kuk 21 de mayo de 2020 19:35

@JCantero, son bastante majos, estos la verdad también han hecho algunas cosas a mi petición :D (para el cliente en el que trabajo), así que inténtalo.

En cuanto al Putty - es la base de Moba, pero hoy en día Putty tal cual queda obsoleto, y Moba me parece a la altura de los tiempos que corren.

Dasije 26 de mayo de 2020 16:51

Hola buenas.

Gracias @JCantero por todo, tocará adaptar para conseguir la mejor emulación posible entre sistemas operativos.

Tengo manuales de RM/COBOL en Castellano, y hay cláusulas de gráficos dentro de la sentencia DISPLAY para versiones superiores a la 6, prestaré atención para su adaptación.

@Kuk, También he probado el moba, ofrece lo mismo que el Putty, es cierto que tiene mejoras para el usuario que administra y trabaja a diario con el servidor, pero a diferencia no es simple, cuando se quiere distribuir la aplicación a clientes o usuarios, se debe mirar por lo fácil y rápido, y Putty lo cumple, no hay que enredar al cliente con cosas complejas y innecesarias, y si le añades que no tiene costo económico, mejor que mejor.

Saludos a tod@s.

Kuk 27 de mayo de 2020 09:45

@Dasije, moba es portable, y tiene coste 0. Aunque estoy de acurdo que para una sola aplicación, distribuir una herramienta multipestaña no tiene mucho sentido.

Federico Chamorro 8 de julio de 2020 23:00

Cita:

Citación del post de Dasije (Mensaje 5722)
Hola de nuevo.

He instalado Putty en otro PC, he configurado como tal viene tu ejemplo en el word que has hecho.

Pero sigue sin quedar bien.

Te he mandado tres capturas, de como queda en MS-DOS, Windows y en Linux.

¿Interfiere parámetros del sistema operativo?, por eso quería replicar lo que se conoce que ya funciona bien.

Saludos.


Si esta es en linux en el .bash
Código Bash:
  1. TERM=linux
y en Putty UTF-8 y tiene que funcionar sin problemas.


La franja horaria es GMT +2. Ahora son las 16:27.

Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.