Πρώτο commit
Αυτό το commit περιλαμβάνεται σε:
commit
8ec8e9bee2
451 αρχεία άλλαξαν με 46736 προσθήκες και 0 διαγραφές
240
content/articles/12/04_opti.md
Κανονικό αρχείο
240
content/articles/12/04_opti.md
Κανονικό αρχείο
|
@ -0,0 +1,240 @@
|
|||
+++
|
||||
title = 'ΕΛΛΗΝΙΚΟ OPTi931 Mini-HOWTO'
|
||||
date = '1999-02-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Παύλος Παρίσσης'
|
||||
issue = ['Magaz 12']
|
||||
issue_weight = 4
|
||||
+++
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Το κείμενο αυτό περιγράφει την υποστήριξη του Linux για ήχο με την κάρτα ήχου OPTi82C931.*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Τα παρακάτω βήματα είναι αυτά που χρειάστηκαν να γίνουν ώστε η OPTi82C931 να δούλεψη κάτω από Linux.
|
||||
|
||||
**1. Ο εύκολος τρόπος:**
|
||||
-----------------------------------------------
|
||||
|
||||
**2. Ρυθμίζοντας τον Πυρήνα:**
|
||||
-----------------------------------------------------
|
||||
|
||||
**3. OPTi82C931 και kernel 2.0.x ή 2.1.Χ**
|
||||
-----------------------------------------------------------------
|
||||
|
||||
**4. Tips**
|
||||
----------------------------------
|
||||
|
||||
kernel, τρέχτε τον οδηγό και θα έχετε ήχο. Αυτή είναι μια πολύ εύκολη λύση αλλά κοστίζει \$20. Υπάρχει και μια δοκιμαστική έκδοση αυτού του οδηγού που είχα
|
||||
κατεβάσει και δούλεψε τέλεια αλλά είχα ήχο μόνο για 3 ώρες σε κάθε τρέξιμο του οδηγού και επιπλέον θα έπρεπε να κατεβάζω και να ξανά κατεβάζω τον οδηγό
|
||||
συνεχεία!. Επειδή είναι τρελό να δώσετε \$20 για έναν οδηγό για μια κάρτα που κοστίζει \$15 διαβάστε τα παρακάτω και σε 30 λεπτά θα έχετε ήχο για πάντα, δωρεάν
|
||||
και θα εμπλουτίσετε τις γνώσεις σας.
|
||||
|
||||
|
||||
### [2. Ρυθμίζοντας τον Πυρήνα:]{#s2}
|
||||
|
||||
Αυτές οι οδηγίες αρμόζουν μόνο στους kernel 2.0.x για τους kernel 2.1.Χ και 2.2.X θα αναφερθώ αργότερα.\
|
||||
Πρέπει να κάνετε compile τον ήχο σαν module. Θα πρέπει να έχετε και τον [OSS Free Sound Driver](../files/ossfree38s9-linux20x_tar.gz) κατεβαστέ την τελευταία
|
||||
έκδοση κάντε ότι λεει το [README](../files/ossfree38s-linux20x.README) αρχείο και ξεκινήστε την διαδικασία compile με make config(menu ή xconfig) και δώστε τις
|
||||
παρακάτω σαν απαντήσεις :
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
M Sound card support
|
||||
|
||||
Y Generic OPL2/OPL3 FM synthesizer support
|
||||
|
||||
Y MPU-401 support (NOT for SB16)
|
||||
|
||||
Y Microsoft Sound System support
|
||||
|
||||
Y FM synthesizer (YM3812/OPL-3) support
|
||||
|
||||
330 I/O base for MPU401 Check from manual of the card
|
||||
|
||||
5 MPU401 IRQ Check from manual of the card
|
||||
|
||||
530 MSS/WSS I/O base 530, 604, E80 or F40
|
||||
|
||||
7 MSS/WSS IRQ 7, 9, 10 or 11
|
||||
|
||||
0 MSS/WSS DMA 0, 1 or 3
|
||||
|
||||
1 MSS/WSS second DMA (if possible) 0, 1 or 3
|
||||
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Είναι χρήσιμο να πατε στο DOS/Windows και στον κατάλογο OPTI931 να τρέξετε sndinit /b έτσι θα δείτε τα IRQ μετά οποία είναι σεταρισμένη η κάρτα σας. Ακόμα αν
|
||||
θέλετε να δείτε τα IRQ που δέχονται ή όχι οι συσκευές ανοίχτε το /etc/isapnp.conf αλλά είναι σχετικά απίθανο να έχει διαφορετικά από ότι πρέπει να δώσετε
|
||||
σύμφωνα με τα παραπάνω.
|
||||
|
||||
Μετά κάντε τα κλασσικά βήματα make dep, make clean, make zImage, make modules και make modules\_install.
|
||||
|
||||
- ISAPNPTOOLS:
|
||||
|
||||
Το επόμενο βήμα είναι να κατεβάσετε εάν δεν έχετε και να τρέξετε το isapnp. Μπορείτε να το κατεβάσετε τα [από εδώ](../files/isapnptools-1.17-0.1.i386.rpm).
|
||||
Μόλις τελειώσετε με το setup των tools τρέχτε isapnp και έτσι θα δημιουργηθεί ένα [/etc/isapnp.conf](../files/isapnp.conf) αρχείο μετά τρέχτε pnpdump \>
|
||||
isapnp.conf.
|
||||
|
||||
Σε αυτό το σημείο θέλει μεγάλη προσοχή, πρέπει να τροποποιήσετε το isapnp.conf ώστε να ταιριάζει με τις τιμές που δώσατε στο compile. \'Εχω διαθέσιμο το
|
||||
δικό μου isapnp.conf(κάνε το link το αρχείο) ώστε να το έχετε σαν οδηγώ. Το πιο σημαντικό από όλα είναι να προσθέστε την παρακάτω γραμμή στο isapnp.conf :
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
(CSN 1 (LD 0 (REG 2 (POKE 4))))
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Αυτή η γραμμή απενεργοποιεί το PnP της κάρτας ώστε να μπορούμε να την ρυθμίσουμε έτσι όπως θέλουμε. Μετά τρέχτε isapnp /etc/isapnp.conf και θα πάρετε τα
|
||||
παρακάτω
|
||||
|
||||
Board 1 has Identity 74 ff ff ff ff 31 09 14 3e: OPT0931 Serial No
|
||||
42949672.................
|
||||
|
||||
- Γράφοντας τις ρυθμίσεις στην OPTi931 :
|
||||
|
||||
Πρέπει να κάνουμε compile και να τρέξουμε ένα [μικρό πρόγραμμα](../files/OPTi82C931.c). Ένα μεγάλο ευχαριστώ στον [Donald
|
||||
MBurns](mailto:donald@sequel.demon.co.uk).\
|
||||
Επισκεφθείτε την [σελίδα του](http://www.sequel.demon.co.uk/opti.html) του για να μάθετε περισσότερα για το πρόγραμμα και την OPTi931. Αυτό που κάνει το
|
||||
πρόγραμμα είναι να γράφει τις ρυθμίσεις της OPTi931. Εδώ είναι και η γραμμή εντολής που θέτει την OPTi931 στις ρυθμίσεις που περιγράψαμε νωρίτερα
|
||||
|
||||
(MSS io-530, irq-7, dma-0, MPU-401 io-330, irq-5).
|
||||
|
||||
Για να κάνετε compile το πρόγραμμα χρησιμοποιήστε τον gcc compiler ή οποίον άλλον θέλετε, εγώ χρησιμοποιώ τον gcc και κάντε compile έτσι:
|
||||
|
||||
gcc -O3 OPTi82C931.c -o OPTi82C931
|
||||
|
||||
και μετά τρέχτε το :
|
||||
|
||||
./OPTi82C931 0 0x07 1 0x07 3 0x09 4 0x14 5 0x3E** 0x92
|
||||
|
||||
και θα πρέπει να δείτε τα παρακάτω :
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
MCR0 <- 07
|
||||
MCR1 <- 07
|
||||
MCR3 <- 09
|
||||
MCR4 <- 14
|
||||
MCR5 <- 3E
|
||||
MCR6 <- 92
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
\*\* Στο /usr/src/linux/Documentation/sound/Opti διάβασα ότι ο IO3 base πρέπει να είναι 0x0E0C και όχι 0x0E0E αλλά και τα δύο δουλεύουν! εγώ έχω C εάν
|
||||
βάλετε E πρέπει να πάτε και στο /etc/isapnp.conf και εκεί που λεει (IO 3 (BASE 0x0E0C)) να βάλτε (IO 3 (BASE 0x0E0E)) καθώς και στην εντολή ./OPTi82C931 να
|
||||
είναι E αντί C.
|
||||
|
||||
- Φόρτωμα του sound module :
|
||||
|
||||
Είμαστε ένα βήμα πριν να ακούσουμε μουσική, πρέπει να φορτώσουμε το module δίνοντας insmod sound και εάν έχετε ανοιχτά τα ηχεία σας θα ακούσετε ένα μικρό
|
||||
ήχο.
|
||||
|
||||
Δείτε το /den/sndstat με την εντολή cat /dev/sndstat \| more και επιβεβαιώστε ότι έχετε επιτυχώς φορτώσει την module. Η έξοδος θα πρέπει να είναι η παρακάτω
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
OSS/Free3.8s9-980302 (Mon Jan 25 14:08:59 GMT 1999 root,
|
||||
Linux localhost.localdomain 2.0.36 #1 Sat Jan 23 00:14:33 GMT 1999 i586 unknown)
|
||||
Load type: Driver loaded as a module.
|
||||
Kernel: Linux localhost.localdomain 2.0.36 #1 Tue Jan 26 17:05:59 GMT 1999 i586
|
||||
Config options: 0
|
||||
|
||||
Installed drivers:
|
||||
Type 10: MS Sound System
|
||||
Type 27: Compaq Deskpro XL
|
||||
Type 1: OPL-2/OPL-3 FM
|
||||
Type 5: Roland MPU-401
|
||||
|
||||
Card config:
|
||||
MS Sound System at 0x530 irq 7 drq 0,1
|
||||
Roland MPU-401 at 0x330 irq 5 drq 0
|
||||
OPL-2/OPL-3 FM at 0x388 drq 0
|
||||
|
||||
Audio devices:
|
||||
0: MSS audio codec (82C930) (DUPLEX)
|
||||
|
||||
Synth devices:
|
||||
0: Yamaha OPL-3
|
||||
|
||||
Midi devices:
|
||||
0: MPU-401 0.0 Midi interface #1
|
||||
|
||||
Timers:
|
||||
0: System clock
|
||||
|
||||
Mixers:
|
||||
0: MSS audio codec (82C930)
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Το πιο σημαντικό είναι να έχετε ένα device κάτω από κάθε device εάν όχι κάτι δεν έγινε σωστά.
|
||||
|
||||
- Το τελευταίο βήμα
|
||||
|
||||
Όσοι από εσάς κάνατε reset μετά τα παραπάνω δεν θα έχετε ήχο! Και αυτό διότι κάτι λάθος γίνετε στο /etc/rc.d/rc.sysinit. Για αυτό ανοίξτε το και σε κάποιο
|
||||
σημείο θα λέει τα παρακάτω :
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
# load sound modules
|
||||
if ! grep -i nomodules /proc/cmdline >/dev/null ; then
|
||||
if [ -n "$USEMODULES" ]; then
|
||||
if grep -s "alias sound" /etc/conf.modules > /dev/null ; then
|
||||
modprobe sound
|
||||
if grep -s "alias midi" /etc/conf.modules > /dev/null ; then
|
||||
modprobe midi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
εσείς θα πρέπει να κάνετε τις παρακατω αλλαγές ωστε να έχετε για πάντα ήχο, κρατήστε και ένα backup κάπου για καλό και για κακό :
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
# load sound modules
|
||||
if ! grep -i nomodules /proc/cmdline >/dev/null ; then
|
||||
if [ -n "$USEMODULES" ]; then
|
||||
# if grep -s "alias sound" /etc/conf.modules > /dev/null ; then
|
||||
# modprobe sound
|
||||
OPTi82C931 0 0x07 1 0x07 3 0x09 4 0x14 5 0x3E** 0x92
|
||||
insmod sound
|
||||
# if grep -s "alias midi" /etc/conf.modules > /dev/null ; then
|
||||
# modprobe midi
|
||||
# fi
|
||||
# fi
|
||||
fi
|
||||
fi
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Μην ξεχάσετε να αντιγράψετε το OPTi82C931, όχι το OPTi82C931.c, στον κατάλογο /bin
|
||||
|
||||
Αυτός ο τρόπος δούλεψε μετά απο πολύ ταλαιπωρία στο RedHat 5.1 που έχω αλλά προφανώς δουλεύει σε όλα τα άλλα. Ελπίζω με αυτό το κείμενο να γλίτωσα μερικούς
|
||||
απο την ταλαιπωρία. Τελειώσαμε και καλές μουσικές αναζητήσεις:)
|
||||
|
||||
|
||||
### [3. OPTi82C931 και kernel 2.0.x ή 2.1.Χ]{#s3}
|
||||
|
||||
Για αυτούς που έχουν τους παραπάνω kernels δεν θα χρειάζεται να κάνουν τίποτα απο τα παραπάνω διότι η OPTi82C931 υποστηρίζετε απο αυτους. Το μόνο που πρέπει να
|
||||
κάνουν είναι να διαβάσουν το Opti.txt που βρίσκετε στον κατάλογο με τα docs.
|
||||
|
||||
|
||||
### [4. Tips]{#s4}
|
||||
|
||||
1. Για να ακούσετε midi file με το Κmid πρέπει να πάτε στα options και midi setup και να επιλέξετε σαν midi device το Yamaha OPL-3-FM και όχι το MPU-401 0.0
|
||||
Midi interface \#1- External Midi port
|
||||
2. Εάν κάτι δεν γίνει σωστά πρέπει πρώτα να κάνετε compile τον kernel χωρίς sound support και μετά πάλι από την αρχή, είναι ο πιο κουραστικός δρόμος αλλά και ο
|
||||
πιο σωστός. Μην ξεχάσετε να σβήσετε το /etc/isapnp.conf και να το ξανά δημιουργήσετε με την εντολή isapnp.
|
||||
3. Θέλει μεγάλη προσοχή στο τη δώσατε όταν κάνατε compile και τη έχετε στο isapnp.conf. Εάν δεν συμβαδίζουν οι ρυθμίσεις μην περίμενε να ακούσετε ήχο
|
||||
|
||||
Σε αυτό το σημείο θέλω να ευχαριστήσω τον [David Rees](mailto:drees@spoke.nols.com) που με το δικό του κείμενο άκουσα ήχο στο PC μου. Το OPTi931 Mini-HOWTO που
|
||||
έχει γράψει θα το βρείτε [εδώ](http://spoke.nols.com/~drees) καθώς και τα απαραίτητα αρχεία.
|
||||
|
Φόρτωση…
Προσθήκη πίνακα
Προσθήκη υπερσυνδέσμου
Παράθεση σε νέο ζήτημα