• Opendoors question

    From Gryphon@21:1/120 to All on Mon Oct 23 14:40:04 2017
    I'm doing some dabbling into writing doors in C and using OpenDoors as a library. I'm doing my development on Linux and using gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5).

    I'm trying to write a card game door and I want to use the card symbols
    (club, hearts, diamonds, spades) that are depicted by ascii values \x03 \x04 \x05 and \x06. When I try to use od_printf or od_disp_emu, the screen goes beserk.

    I use a Windows 10 desktop and putty to connect to a headless linux installation. Putty is set to use CP437 emulation.

    Has anybody come across this issue? How did you overcome it?

    --- Mystic BBS v1.12 A35 (Linux/64)
    * Origin: Cyberia BBS | cyberia.darktech.org | San Jose, CA (21:1/120)
  • From apam@21:1/125 to Gryphon on Tue Oct 24 10:57:46 2017
    Gryphon said....

    Has anybody come across this issue? How did you overcome it?

    Sorry, I've not come across it. The only time i've printed a non alpha numeric character in od_printf was with my battleship game and that was a block character, I just copy and pasted the block character directly into my editor from pablodraw.

    Andrew
    --- MagickaBBS v0.7alpha (Linux/x86_64)
    * Origin: Exotica BBS - telnet://exoticabbs.com:2023/ (21:1/125)
  • From garycrunk@21:2/105 to Gryphon on Tue Oct 24 07:32:46 2017
    (club, hearts, diamonds, spades) that are depicted by ascii values \x03 \x04 \x05 and \x06. When I try to use od_printf or od_disp_emu, the screen goes beserk.
    Has anybody come across this issue? How did you overcome it?

    Well, I do not program in Linux or in "C" at all, but I've also tried that in other programs. I do not know if it's a program issue or if it's a Terminal Issue.

    I know that in the ASCII code those were used as Screen Control Characters. For Example: ASCII(3) signifies "End Of Text" ETX . ASCII(4) signifies "End Transmit" EOT , ASCII(5) signifies "Enquiry" ETX and ASCII(6) signifies "Acknowledge" ACK.

    That may be why the screen is going "Bezerk" because I "Believe" the Terminal program is reading those characters and is acting upon them as they were intended many years ago when you had Serial ASCII Terminals connecting to the Computer instead of simply Displaying them.

    I could be wrong... Most probably I am.. Maybe test out this theory by using
    a different terminal program to "Play" your game.

    Gary

    ----=[ Gary Crunk * Another F-ing BBS * anotherbbs.bbsindex.com ]=----

    --- Mystic BBS v1.12 A34 (Windows/32)
    * Origin: Another F-ing BBS (21:2/105)
  • From bcw142@21:1/145.3 to Gryphon on Tue Oct 24 06:35:36 2017
    On 10/23/17, Gryphon said the following...
    I'm trying to write a card game door and I want to use the card symbols (club, hearts, diamonds, spades) that are depicted by ascii values \x03 \x04 \x05 and \x06. When I try to use od_printf or od_disp_emu, the screen goes beserk.

    Check out https://nethackwiki.com/wiki/IBMgraphics I suspect there is help there. What I thought was useful was:

    Linux Console

    If your system uses a unicode console, disable it (for the current session) with:

    unicode_stop

    Then re-load the default text font with one of the two following commands:

    Debian-based systems:

    consolechars -m cp437 -f default8x16

    Redhat-based systems, others:

    setfont default8x16

    Finally, you may need to load the CP437 translation mode:

    setfont -m cp437

    --- Mystic BBS v1.12 A35 (Linux/64)
    * Origin: Workpoint (21:1/145.3)
  • From Gryphon@21:1/120 to garycrunk on Thu Oct 26 12:22:24 2017
    On 10/24/17, garycrunk said the following...

    I'm trying to write a card game door and I want to use the card symbo (club, hearts, diamonds, spades) that are depicted by ascii values \x \x04 \x05 and \x06. When I try to use od_printf or od_disp_emu, the screen goes beserk.
    Has anybody come across this issue? How did you overcome it?

    Well, I do not program in Linux or in "C" at all, but I've also tried
    that in other programs. I do not know if it's a program issue or if
    it's a Terminal Issue.

    I know that in the ASCII code those were used as Screen Control Characters. For Example: ASCII(3) signifies "End Of Text" ETX .
    ASCII(4) signifies "End Transmit" EOT , ASCII(5) signifies "Enquiry" ETX and ASCII(6) signifies "Acknowledge" ACK.

    That may be why the screen is going "Bezerk" because I "Believe" the Terminal program is reading those characters and is acting upon them as they were intended many years ago when you had Serial ASCII Terminals connecting to the Computer instead of simply Displaying them.

    I could be wrong... Most probably I am.. Maybe test out this theory by using a different terminal program to "Play" your game.

    The problem I see is that OD has functions to display ANSI files and the ANSI files can display those characters just fine. So it makes me think that OD
    CAN display them. The trick is to find the exact way to do it.

    --- Mystic BBS v1.12 A35 (Linux/64)
    * Origin: Cyberia BBS | cyberia.darktech.org | San Jose, CA (21:1/120)
  • From Gryphon@21:1/120 to bcw142 on Thu Oct 26 12:25:10 2017
    On 10/24/17, bcw142 said the following...

    On 10/23/17, Gryphon said the following...
    I'm trying to write a card game door and I want to use the card symbo (club, hearts, diamonds, spades) that are depicted by ascii values \x \x04 \x05 and \x06. When I try to use od_printf or od_disp_emu, the screen goes beserk.

    Check out https://nethackwiki.com/wiki/IBMgraphics I suspect there is
    help there. What I thought was useful was:

    Linux Console

    If your system uses a unicode console, disable it (for the current session) with:

    unicode_stop

    Then re-load the default text font with one of the two following
    commands:

    Debian-based systems:

    consolechars -m cp437 -f default8x16

    Redhat-based systems, others:

    setfont default8x16

    Finally, you may need to load the CP437 translation mode:

    setfont -m cp437


    ugh! That's a lot of steps to go through. Consider that this is intended to be a linux based door game. If this were the only way to make it work, then
    it would require all the players to modify their terminals in this way.

    One thing I haven't tried is to run the program as a door in Mystic. Mystic usually changes the terminal settings when it runs doors. Maybe that is all that is needed. At least that might fix it for Mystic BBSes.

    --- Mystic BBS v1.12 A35 (Linux/64)
    * Origin: Cyberia BBS | cyberia.darktech.org | San Jose, CA (21:1/120)
  • From bcw142@21:1/145.3 to Gryphon on Fri Oct 27 11:16:50 2017
    On 10/26/17, Gryphon said the following...

    On 10/24/17, bcw142 said the following...

    On 10/23/17, Gryphon said the following...
    I'm trying to write a card game door and I want to use the card (club, hearts, diamonds, spades) that are depicted by ascii valu \x04 \x05 and \x06. When I try to use od_printf or od_disp_emu, screen goes beserk.

    Check out https://nethackwiki.com/wiki/IBMgraphics I suspect there is help there. What I thought was useful was:

    Linux Console

    If your system uses a unicode console, disable it (for the current session) with:

    unicode_stop

    Then re-load the default text font with one of the two following commands:

    Debian-based systems:

    consolechars -m cp437 -f default8x16

    Redhat-based systems, others:

    setfont default8x16

    Finally, you may need to load the CP437 translation mode:

    setfont -m cp437


    ugh! That's a lot of steps to go through. Consider that this is
    intended to be a linux based door game. If this were the only way to
    make it work, then it would require all the players to modify their terminals in this way.

    Yes it would, it's what you have to do now to have CP437 under Linux shells
    for the most part. It's one reason my main system is still running 14.04 instead of 16.04. Either will work on Mystic if it has UTF-8 as on option, otherwise that's what you have to do.

    One thing I haven't tried is to run the program as a door in Mystic. Mystic usually changes the terminal settings when it runs doors. Maybe that is all that is needed. At least that might fix it for Mystic BBSes.

    Yes, that should work as well with any normal terminal program like SyncTERM
    or the like. UTF-8 is an issue for older software and is now the standard for Linux and Windows. It seems some versions of Linux are drifting away from
    that, but Ubuntu seems to have the worse of both worlds ;( Windows also seems to be heading that way. If it settles down we can likely make a translator
    like putty and mystic uses and add it like netfoss and the like. Another
    layer between the user and the BBS.

    --- Mystic BBS v1.12 A35 (Linux/64)
    * Origin: Cyberia BBS | cyberia.darktech.org | San Jose, CA (21:1/120)

    --- Mystic BBS v1.12 A35 (Linux/64)
    * Origin: Workpoint (21:1/145.3)