Προς το περιεχόμενο

[WinXP] Βοήθεια με ελληνική DOS εφαρμογή


olspookishmagus

Προτεινόμενες αναρτήσεις

Δημοσ.

Γεια χαρά.

 

Θα ήθελα την βοήθεια σας σχετικά με κάποιο πρόβλημα που αντιμετωπίζω με μία ελληνική DOS εφαρμογή σε Windows XP. Το πρόβλημα δεν είναι η αλλαγή γλώσσας αλλά το πως θα καταφέρω να εμφανίσω ελληνικά σε full-screen.

 

Δοκίμασα διάφορες παραμέτρους και διάφορα προγράμματα, μπορεί κιόλας να έχω περάσει ξυστά από τη λύση. Ακόμα έχω πειραματιστεί και με τις παραμέτρους της καρτέλλας Συμβατότητα/Compatibility από τις Ιδιότήτες/Properties του προγράμματος.

 

Αυτό που μέχρι στιγμής έχω καταφέρει είναι να έχω ελληνικά γράμματα σε fullscreen αλλά να φαίνονται διπλά κάπως όπως αυτή η πολύ γνωστή εικόνα.

 

Ευχαριστώ εκ των προτέρων όσους με βοηθήσουν!

Δημοσ.

control panel->regional and language options->advanced

Επιλέγεις το "Apply all settings..."

Κάνε επανεκκίνηση για να το πάρει σίγουρα.

Αν δεν λυθεί το πρόβλημα, στην ίδια καρτέλα άρχισε να επιλέγεις άλλες κωδικοποιήσεις στα ελληνικά.

Δημοσ.

Δεν δούλεψε! :neutral:

 

Έφτασα να έχω επιλεγμένους τους εξής πίνακες μετατροπής κωδικοσελίδας:

737 (OEM - Ελληνική 437G)

869 (OEM - Νέα Ελληνική)

875 (IBM EBCDIC - Νέα Ελληνική)

 

Ελπίζω να μπορέσω να βρω τη λύση, φαντάζομαι κάποιοι που θέλησαν να μπορέσουν να κάνουν προγράμματα όπως Eurofasma, Κεφάλαιο, Control και άλλα γνωστών ελληνικών προγραμματιστικών οίκων να δουλέψουν σε Windows XP θα έχουν τη λύση.

Δημοσ.

το θεμα full screen, ειναι το δύσκολο, γιατι εκει παιζουν τα raster fonts..

 

 

πάντως, θα μπορούσες να δουλευεις σε window mode που δεν εχει προβλημα το ελληνικό (se Lucida), αυξάνοντας τις διαστάσεις του παραθύρου απο τα Defaults console properties, και το μέγεθος των fonts, και να μοιάζει κάπως με full screen,

 

 

 

ισως στα παρακάτω να εχει τη λύση

διαβασε εκει που λέμε για το 1253

και τα fonts "Lucida Console"

 

http://www.insomnia.gr/vb3/showthread.php?t=175840

 

http://www.insomnia.gr/vb3/showthread.php?t=125180

 

ή εδω για ενα πρόγραμμα που δουλευει οπως το παλιό dos

http://www.insomnia.gr/vb3/showthread.php?t=30960

Δημοσ.

Χρειάζεσαι κάποιο πρόγραμμα TSR που σε κάθε αλλαγή ανάλυσης να φορτώνει τις ελληνικές γραμματοσειρές στην ειδική μνήμη της κάρτας γραφικών.

Μέχρι και τα 9x, το πρόγραμμα που αναλάμβανε αυτή τη συμπεριφορά ήταν το display.sys που υπήρχε μέσα στο DOS/Windows. Στα XP δεν βλέπω να υπάρχει...

 

Επομένως θες κάποιο από τα εναλλακτικά (μη Microsoft). Υπήρχαν πάρα πολλά γι' αυτό το σκοπό παλιότερα, αλλά δε θυμάμαι ποια είναι μόνο για πληκτρολόγιο, και ποια είναι αυτά που αλλάζουν και τα fonts σε κάθε αλλαγή display mode.

 

Άρα, τα δοκιμάζεις όλα με τη σειρά, βάζοντάς τα στο autoexec.nt μέχρι να βρεις ποιο δουλεύει και μας το λες κι εμάς! :)

 

Μερικά ονόματα προγραμμάτων που θυμάμαι απ' έξω: extkb, vga386, vgares.

 

edit: το έψαξα, το abcgrl από http://www.hyper.gr/greek-fonts.html δουλεύει μια χαρά. Το grkeyb (dosgreek.zip) από την ίδια σελίδα δεν δουλεύει.

Δημοσ.

Δοκίμασα το abcgrl που πρότεινες χωρίς κάποια επιτυχία. Ωστόσο αφού λες ότι δουλεύει κάνε τον κόπο και δείξε μας τα περιεχόμενα του AUTOEXEC.NT αλλά και των ιδιοτήτων του προγράμματος.

 

Τα δικό μου AUTOEXEC.NT είναι κάπως έτσι:

 

>@echo off

REM AUTOEXEC.BAT δεν χρησιμοποιείται για την προετοιμασία του
REM περιβάλλοντος MS-DOS.
REM AUTOEXEC.NT χρησιμοποιείται για την προετοιμασία του
REM περιβάλλοντος MS-DOS, εκτός αν καθορίζεται ένα διαφορετικό
REM αρχείο εκκίνησης στο PIF μιας εφαρμογής.

REM Εγκατάσταση επεκτάσεων CD ROM
lh %SystemRoot%\system32\mscdexnt.exe

REM Εγκατάσταση ανακατεύθυνσης δικτύου (φόρτωση πριν το dosx.exe)
lh %SystemRoot%\system32\redir

REM Εγκατάσταση υποστήριξης DPMI
lh %SystemRoot%\system32\dosx

REM Η παρακάτω γραμμή ενεργοποιεί την υποστήριξη της Sound Blaster 2.0 στο NTVDM.
REM Η εντολή για το στήσιμο του περιβάλλοντος BLASTER έχει ως εξής:
REM    SET BLASTER=A220 I5 D1 P330
REM    όπου:
REM        A    προσδιορίζει την βασική θύρα εισόδου/εξόδου της sound blaster
REM        I    προσδιορίζει την γραμμή αίτησης διακοπής
REM        D    προσδιορίζει το 8-bit DMA κανάλι
REM        P    προσδιορίζει την MPU-401 βασική θύρα εισόδου/εξόδου 
REM        T    προσδιορίζει τον τύπο της κάρτας sound blaster 
REM                 1 - Sound Blaster 1.5
REM                 2 - Sound Blaster Pro I
REM                 3 - Sound Blaster 2.0
REM                 4 - Sound Blaster Pro II
REM                 6 - Sound Blaster 16/AWE 32/32/64
REM
REM    Η εξ' ορισμού τιμή είναι A220 I5 D1 T3 και P330.  Εάν κάποιος από τους διακόπτες 
REM    μείνει αδιευκρίνιστος, θα χρησιμοποιηθεί η εξ' ορισμού τιμή. (ΣΗΜΕΙΩΣΗ: Μια που όλες
REM    οι θύρες είναι εικονικές, η πληροφορία που παρέχεται εδώ δεν οφείλει να ταιριάζει με 
REM    το πραγματικό του υλικού.) Το NTVDM υποστηρίζει μόνο Sound Blaster 2.0.
REM    Ο διακόπτης T πρέπει να τίθεται στην τιμή 3, εάν καθορίζεται.
SET BLASTER=A220 I5 D1 P330 T3

REM Για να απενεργοποιήσετε την υποστήριξη Sound Blaster 2.0 στο NTVDM , καθορίστε μια μη 
REM έγκυρη SB βασική διεύθυνση θύρας εισόδου/εξόδου.  Για παράδειγμα:
REM    SET BLASTER=A0

REM Υποστήριξη CLIPPER
SET CLIPPER=F99

REM Υποστήριξη ελληνικών
lh %SystemRoot%\Sgreek /t082a /d0027
lh %SystemRoot%\abcgrl

Από τις ιδιότητες του προγράμματος:

 

483479030_f804028656.jpg

 

483479032_0a1b50ff49.jpg

 

Δεν έχω δοκιμάσει κάτι άλλο, θα δοκιμάσω και εάν έχω κάποιο νεότερα θα σας ενημερώσω.

Δημοσ.

Έχω την εντύπωση ότι αυτά τα προγράμματα δεν δουλεύουν όπως κανείς θα περίμενε γιατί παρά το ότι έχω ενεργοποιήσει την σχετική επιλογή το πρόγραμμα δεν θέλει να τρέξει σε πλήρη οθόνη (fullscreen) και σε ανάλυση 640x480.

 

Δοκίμασα να αλλάξω την ανάλυση γραμμών και στηλών με τη χρήση της εντολής mode αλλά τα Windows αρνούνται να αλλάξουν τις γραμμές και τις στήλες της οθόνης σε πλήρη οθόνη.

 

Επίσης δοκίμασα να παίξω και με την εντολή chcp χωρίς κάποια επιτυχία. Έβαλα όλες τις ελληνικές κωδικοσελίδες αλλά χωρίς αποτέλεσμα. Νομίζω ότι φταίει το πρόβλημα που προανέφερα.

 

Θα ψάξω να βρώ ένα πρόγραμμα να μπορέσω να τραβήξω screenshot πως ακριβώς μου εμφανίζεται η οθόνη ώστε ίσως κάποιος να μπορέσει να αναγνωρίσει το πρόβλημα και να προτείνει λύση.

Δημοσ.

Autoexec.nt:

>
@echo off
rem NSM Full Screen DOS Box Support
lh C:\PROGRA~1\NETSUP~1\ntfsdb /e >nul

REM AUTOEXEC.BAT δεν χρησιμοποιείται για την προετοιμασία του
REM περιβάλλοντος MS-DOS.
REM AUTOEXEC.NT χρησιμοποιείται για την προετοιμασία του
REM περιβάλλοντος MS-DOS, εκτός αν καθορίζεται ένα διαφορετικό
REM αρχείο εκκίνησης στο PIF μιας εφαρμογής.

REM Εγκατάσταση επεκτάσεων CD ROM
lh %SystemRoot%\system32\mscdexnt.exe

REM Εγκατάσταση ανακατεύθυνσης δικτύου (φόρτωση πριν το dosx.exe)
lh %SystemRoot%\system32\redir

REM Εγκατάσταση υποστήριξης DPMI
lh %SystemRoot%\system32\dosx

REM Η παρακάτω γραμμή ενεργοποιεί την υποστήριξη της Sound Blaster 2.0 στο NTVDM.
REM Η εντολή για το στήσιμο του περιβάλλοντος BLASTER έχει ως εξής:
REM    SET BLASTER=A220 I5 D1 P330
REM    όπου:
REM        A    προσδιορίζει την βασική θύρα εισόδου/εξόδου της sound blaster
REM        I    προσδιορίζει την γραμμή αίτησης διακοπής
REM        D    προσδιορίζει το 8-bit DMA κανάλι
REM        P    προσδιορίζει την MPU-401 βασική θύρα εισόδου/εξόδου 
REM        T    προσδιορίζει τον τύπο της κάρτας sound blaster 
REM                 1 - Sound Blaster 1.5
REM                 2 - Sound Blaster Pro I
REM                 3 - Sound Blaster 2.0
REM                 4 - Sound Blaster Pro II
REM                 6 - Sound Blaster 16/AWE 32/32/64
REM
REM    Η εξ' ορισμού τιμή είναι A220 I5 D1 T3 και P330.  Εάν κάποιος από τους διακόπτες 
REM    μείνει αδιευκρίνιστος, θα χρησιμοποιηθεί η εξ' ορισμού τιμή. (ΣΗΜΕΙΩΣΗ: Μια που όλες
REM    οι θύρες είναι εικονικές, η πληροφορία που παρέχεται εδώ δεν οφείλει να ταιριάζει με 
REM    το πραγματικό του υλικού.) Το NTVDM υποστηρίζει μόνο Sound Blaster 2.0.
REM    Ο διακόπτης T πρέπει να τίθεται στην τιμή 3, εάν καθορίζεται.
SET BLASTER=A220 I5 D1 P330 T3

REM Για να απενεργοποιήσετε την υποστήριξη Sound Blaster 2.0 στο NTVDM , καθορίστε μια μη 
REM έγκυρη SB βασική διεύθυνση θύρας εισόδου/εξόδου.  Για παράδειγμα:
REM    SET BLASTER=A0

lh %SystemRoot%\system32\abcgrl.com
lh %SystemRoot%\system32\Multikbd.com

 

Το Multikbd είναι δικό μου, μπορείς να το βρεις στη σελίδα μου.

 

Δεν είχα το TAMEIO.EXE για να δοκιμάσω, οπότε τις δοκιμές τις έκανα με μια παλιά έκδοση της Pascal.

Ιδιότητες συντόμευσης: δεν πείραξα τίποτα. Απλά αντιγραφή το bp.exe και επικόλληση ως συντόμευση στην επιφάνεια εργασίας.

Δημοσ.
Έχω την εντύπωση ότι αυτά τα προγράμματα δεν δουλεύουν όπως κανείς θα περίμενε γιατί παρά το ότι έχω ενεργοποιήσει την σχετική επιλογή το πρόγραμμα δεν θέλει να τρέξει σε πλήρη οθόνη (fullscreen) και σε ανάλυση 640x480.

 

Ώπα. Είσαι σίγουρος ότι μιλάμε για text mode;

Γιατί 640x480 είναι κατάσταση γραφικών (interrupt 10h/ax=0012h), ενώ η κλασσική text mode είναι 720x400 (interrupt 10h/ax=0003h).

 

Αν μιλάμε για κατάσταση γραφικών, τότε είναι τελείως διαφορετική κατάσταση και εξαρτάται από το κάθε πρόγραμμα. Π.χ. μερικά παλιά αρχιτεκτονικά είχαν φτιαχτεί σε Pascal και χρησιμοποιούσαν τη βιβλιοθήκη bgi της Borland, οπότε για να βάλεις ελληνικά έπρεπε να τους αλλάξεις κάτι αρχεία γραμματοσειρών που είχαν.

 

Για να κάνεις capture την οθόνη, μπορείς να χρησιμοποιήσεις το screen thief (google it). Ή, για να μην παιδεύεσαι, μια ψηφιακή φωτογραφική μηχανή.

Αν θες ανέβασε και ένα dir από τον φάκελο του TAMEIO.EXE, μήπως και ξεχωρίζει σε ποια γλώσσα γράφηκε κάποιο αρχείο κτλ...

Δημοσ.

Η συγκεκριμμένη εφαρμογή είναι φτιαγμένη σε Clipper και σε DBC/DBStart. Υπάρχει ένα αρχείο DBSTART.INI που περιέχει τις ρυθμίσεις του περιβάλλοντος εργασίας αλλά δεν είναι κάτι ιδιαίτερο.

 

Αυτό είναι ότι έχω καταφέρει να πάρω όταν έχω ζητήσει το πρόγραμμα να ανοίγει αμέσως σε πλήρη οθόνη (fullscreen):

 

483662360_be85b1fd63.jpg

 

Και αυτό όταν αφού ανοίξει σε παράθυρο το κάνω πλήρη οθόνη με Alt+Enter:

 

483662362_abd70fa9ea.jpg

 

Δοκιμάζω κατά τη διάρκεια της μέρας διάφορους συνδυασμούς αλλά δεν έχω καταφέρει ακόμα να το κάνω να δουλέψει όπως πρέπει.

Δημοσ.

Κατάλαβα. Παίζει το εξής:

 

Το abcgrl.com και παρόμοια προγράμματα φορτώνουν τους ελληνικούς χαρακτήρες στη videoram.

 

Κάποια στιγμή γύρω στο 1995 ήταν δημοφιλές προγράμματα άσχετα με ελληνικά (όπως π.χ. το norton ghost και το TAMEIO.EXE που φαίνεται στην εικόνα) να πειράζουν κι αυτά τους χαρακτήρες στη videoram με σκοπό να μπορούν να εμφανίσουν περίεργα σύμβολα.

 

Το σύμβολο κλεισίματος που φαίνεται πάνω αριστερά στον πορτοκαλί διάλογο στην πλήρη οθόνη έχει φορτωθεί στην videoram. Δηλαδή είναι κατάσταση κειμένου, αλλά με user defined χαρακτήρες.

 

Επομένως το πρόγραμμα TAMEIO.EXE είναι ειδική περίπτωση, και επειδή φορτώνεται μετά από τα ελληνικά (abcgrl) ουσιαστικά τα αχρηστεύει.

 

Στο δεύτερο screenshot, μπαίνει σε λειτουργία το abcgrl. Χαλάει το σύμβολο κλεισίματος και τα ελληνικά φαίνονται μισά επειδή τα fonts έχουν διαφορετικό ύψος. Αν δοκιμάσεις κάποιο άλλο πρόγραμμα αντί του abcgrl μπορεί να πετύχεις να μην κόβονται τα ελληνικά, αλλά οπωσδήποτε θα χάσεις το σύμβολο κλεισίματος και άλλα παρόμοια.

 

Δύσκολη περίπτωση, μάλλον θα πρέπει να πειράξεις τα εσωτερικά fonts του TAMEIO.EXE. Δεν έχω κάποιο πρόγραμμα σε clipper για να το δω οπότε δεν μπορώ να σε βοηθήσω...

Δημοσ.

Κάπως, κάποτε,... το είχα κάνει να εμφανίζεται όπως ακριβώς πρέπει αλλά τότε είχα πρόβλημα με την ενναλαγή του πληκτρολογίου από και σε ελληνικά.

 

Ίσως η λύση να βρίσκεται στο ότι πρέπει να αλλάξουμε το ύψος των χαρακτήρων που τα κάνει να φαίνονται διπλά, γι'αυτό και πριν είχα δοκιμάσει την εντολή mode.

 

Θα συνεχίζω να το ψάχνω μέχρι να το λύσω το ζήτημα.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...