1. Tämä sivusto käyttää keksejä (cookie). Jatkamalla sivuston käyttämistä hyväksyt keksien käyttämisen. Lue lisää.

ProCaster/Yamada Firmwaren kehitys (koodi painoitteinen viestiketju)

Viestiketju DVD-soittimet -osiossa. Ketjun avasi temi 03.08.2005.

  1. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Aloitin uuden ketjun ProCaster 002 ja Yamada 6600 soittimien firmwaren kehitystyötä varten (Pysyy alkuperäinen ProCaster 002 ketju siistimpänä) Tänne ei mielellään perus kysymyksiä vaan ne voi laittaa ProCaster002 ketjuun: http://keskustelu.afterdawn.com/thread_view.cfm/01/102816.
     
    Viimeksi muokattu: 03.08.2005
  2.  
  3. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Viimeksi muokattu: 04.08.2005
  4. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Viimeksi muokattu: 05.08.2005
  5. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Olin hitaampi (juuri löysin tuon saman):
    ROM:7C67 7D 01....mov R5, #1
    ROM:7C69 7F 41....mov R7, #0x41 ; 'A'
    ROM:7C6B 7E 02....mov R6, #2
    ROM:7C6D 12 04 7B.lcall ARM_PutChar
    mutta olen samaa mieltä! Tässä on on tuo mp3 tag ohjaus. kirjoittamalla 7C68 osoitteeseen 00 tuo tieto luetaan tiedostoista muistiin. Seuraavaksi pitää tutkia minkalaisen ohjelmapätkän NA oli tehnyt tuon saamiseksi näytölle.
    Vaihe 1 on siis selvitetty. vaihe 2 saattaa olla vaativa. Vaihe 3 helpompi:
    1) the MP3 tag option must be on (like ARM_Putchar(0x0241,0))
    2) ARM Code must process the TAG's (it has strings like TAG,ID3,TALB)
    3) 8032 code must read TAGs and put it on the screen.
     
    Viimeksi muokattu: 05.08.2005
  6. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Tutkin tuota osaa apexin EEPROM sisällöstä jonne tallennetaan käyttäjän tekemät valinnat. En löytänyt yhtään eroa Yamada v5:een. Tämä tarkoittaa että koodi näiltä osin kirjoittaa ja lukee samoja osoitteita. Se auttaa kovasti jos valikkorakenteisiin haluaa tuoda jotain uutta (voi kopioida ainakin osan koodista sellaisenaan). Muutama muistipaikka ei ole vielä käytössä joka sekin mahdollistaa omia valikko rakenteita. Näitä muistipaikkoja NA on varmasti joutunut käyttämään itse lisäämissään valikoissa.

    A small EEPROM is used to store preferences. It stores 128 bytes, addresses 0x00 to 0x7F.

    0x00 - 0x03 = “MT37”
    0x04 = Video Setup – Component 0x0D = Off 0x2D = YUV 0x6D = RGB
    0x07 = Screen Saver 0x00 = On 0x01 = Off
    0x08 = MPEG4 subtitle 0x00 = Normal 0x01 = East-Europa
    0x09 = Parental Control
    0x0A = Preferred Menu Language
    0x0B = Preferred Audio Language
    0x0C = Preferred Subtitle Language
    0x0D = TV Standard 0x00 = PAL 0x01 = Multi 0x02 = NTSC
    0x0E = TV Display Mode 0x00 = Normal/PS 0x01 = Normal/LB 0x02 = Wide
    0x0F = OSD Language
    0x10 = Angle Mark 0x00 = On 0x01 = Off
    0x15 = Password Mode
    0x00 = On 0x01 = Off
    -0x16 = Closed Caption
    0x00 = On 0x01 = Off
    0x17 = Region Code
    0x23-0x26 = OLD password
    0x27 = SPDIF - output
    0x28 = SPDIF - CD
    0x29 = SPDIF - Dolby Digital
    0x2A = SPDIF - DTS
    0x2B = SPDIF - MPEG
    0x2D = Downmix Mode
    0x2E = Front Speaker
    0x2F = Center Speaker
    0x30 = Rear Surround Speaker
    0x31 = Subwoofer
    0x36 = LPCM SPDIF Output RATE
    0x00 = 48K 0x01 = 96K
    0x3A = Equalizer Type
    0x53 = PRO Logic II
    0x56 = Reverb Mode
    0x5A = PRO Logic II Mode
    0x5B = PRO Logic II Panorama Control
    0x5C = PRO Logic II Center Width
    0x5D = PRO Logic II Dimension Size
    0x5E = Bass Boost
    0x5F = Super Bass
    0x60 = Treble Boost
    0x64 = Video Quality – Brightness
    0x65 = Video Quality – Contrast
    0x66 = Video Quality – Sharpness
    0x67 = Video Quality – Saturation
    0x68 = Video Quality – Hue
    0x76 = Dolby Digital – Dynamic Range Compression
    0x77 = HDCD – Filter
     
    Viimeksi muokattu: 04.09.2005
  7. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Tutkin myös servo koodeja. Noin puolet ns. servo koodeista ovat pieniä 8032 prosessorille tehtyjä ohjelman pätkiä. Toinen puolikas on sitten dataa joka ilmeisemmin on itse servon ohjauskoodeja. Vertailemalla näitä ja kokeilemalla saattaisi löytyä yhdistelmä joka antaisi servolle paremmin yhteensopivia komentoja. Esimerkiksi SRV_FocusDVD1N - SRV_FocusCD1N ovat koodia. SRV_FocusCD1H - SRV_pbCDRFSetting väli on "dataa". Jälleen SRV_pbDVDRFSetting - SRV_pbDPDEQFC väli on koodia. SRV_UnitGainLPF on dataa. Täydennän tätä listaa jos alkaa tuntua että tätä asiaa pitäisi tutkia tarkemmmin.
     
    Viimeksi muokattu: 05.08.2005
  8. Shiroi70

    Shiroi70 Guest

    Anteeksi, että tungengeksin väliin, mutta huomasin, että Temin ProCaster Firmiksessä on erittäin pahalaatuinen bugi. Näet jos avi-tiedoston nimen pituus on liian pitkä (~36 merkkiä), niin tekstitys ei toimi. Tämän voisi korjata. En ole kokeillut, mutta en usko, että Procasterkaan tukee Multisessio-Dvd -levyjä, joten tiedostonnimiä ei jälkikäteen voi korjata.

    Tekstityksen kanssa näyttäisi muutenkin olevan satunnaisia ongelmia, sillä kahdesta kokeilemastani levystä ne ovat vain kokonaan jääneet selittämättä pois levyn jokaisesta avista, vaikka tiedostojen nimien pituus on alle suurin sallittu. Mystistä on. Tiedostojen pitäisi olla ihan oikeassa formaatissa ja olen kokeillut UTF8 ja ASCII enkoodausta.

     
    Moderaattorin viimeksi muokkaama: 06.08.2005
  9. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Raja kulkee jossain 40-42 kirjaimen kohdalla luultavasti päätteen kirjaimetkin otetaan huomioon. Tämä bugi on kyllä korjattavissa. olenkin löytänyt todennäköisesti siihen ratkaisun. Bugi on Arm osassa
    http://board.softpedia.com/index.php?showtopic=1675
    Tätä rajaahan on jo aikaisemmin pidennetty 8032 osiossa, mutta vielä arm-osan bugi on vielä korjaamatta. Luultavasti kuitenkin helposti ratkaistavissa
     
  10. Shiroi70

    Shiroi70 Guest

    Kiva kuulla, että bugi on tunnistettu ja sitä korjataan. Ei ole kiva kokemus, kun olisi pari-kolmekymmentä DVD:llistä Tv-sarjoja ja sitten huomaa, että keskimäärin vain joka toisessa jaksossa toimii tekstitykset!

    Yksi mikä jäi vielä häiritsemään on, että olisiko teknisesti mahdollista, että Procaster tunnistaisi melko yleisesti käytössä olevan tekstityksen rivin katkaisu-koodin "\n"? Tämä helpottaisi, sillä siihen törmää aina silloin tällöin. Ja esimerkiksi jos Tv-sarjassa on 150 jaksoa ja jokainen niistä käyttää tätä menetelmää rivittämiseen, niin on siinä melkoinen työ käsin ne poistaa - ottaen huomioon, että tietenkin jokainen DVD-pitää polttaa uudestaan kaikkineen päivineen, sillä editointi jälkeen päin on multisession tukemattomuuden vuoksi mahdotonta.

    Sitä, että laite oppisi automaattisesti rivittämään, en edes pyydä! (Vaikka sen käytännöllisyys on aina toisinaan erinomainen!)

    Onneksi minulla sentään on varmistuksena Divicon kovalevysoitin, joten en ihan heti ole kuolemassa bugien kanssa... (Joka sitten ei tietenkään taas tue UTF8-enkoodausta!)

     
  11. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    en ole kuullut tuollaisesta rivin katkaisu koodista

    Se muuten saattaisi olla mahdollistakin. ainakin LG:n modeissa on ominaisuus, mika katkaisee ylipitkät rivit ja siirtää tekstit seuraavalle riville, mutta en tiedä miten nuo muutokset pitäisi tehdä
     
  12. Shiroi70

    Shiroi70 Guest

    Se on kai peräisin SSA-formaatista, mutta sen toisinaan näkee eksyneen myös SRT-tekstityksiin. Tietokone (esim. Mediaplayer Classic) katkoo tietenkin ongelmitta rivit oikein. Mutta ei kai tuo niin tärkeä ole; ei varmaan kuulu alkuperäisiin SRT:n määrityksiin.

    Niin ja vielä jos on halua koodata, niin Vob-sub tuki olisi myös ihan jees...
     
    Moderaattorin viimeksi muokkaama: 06.08.2005
  13. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    apex arm1:
    ROM:000063C0 CMP R5, #0x32 ; '2'
    ROM:00020AA0 CMP R5, #0x32 ; '2'
    Tuo nimen pituus vertailu saattaisi olla jompi kumpi näistä riveistä. Tai sitten ei. Tästä osasta koodia minulla ei ole kiinnekohtia. Jos pitäisi arvata niin jälkimmäistä näistä veikkaisin.
     
    Viimeksi muokattu: 06.08.2005
  14. br0max

    br0max Member

    Liittynyt:
    30.05.2005
    Viestejä:
    32
    Kiitokset:
    0
    Pisteet:
    16
    *nix käyttiksissä käytetään rivinvaihtomerkkinä pelkkää Line Feediä (LF) (koodikielellä '\n'), kun taas Winkkarissa se on CR+LF yhdistelmä. Mediatekin firmwaret ovat suunniteltu Windows-tekstitiedostoja varten, joten se olettaa että rivi päättyy CR+LF yhdistelmään. Tästä syystä rivitys ei toimi *nix tekstitiedostoilla.

    LG modistani löytyy itse kehittelemäni line wrapping-algoritmi, jota pystyisi hyödyntämään muissakin firmwareissa. Kokoa sillä on 260 tavua, joten sen verran sille pitäisi raivata jostakin tilaa. Tarkoitus olisi julkaista se dokumentoituna heti kunhan vain ehdin.
     
    Viimeksi muokattu: 06.08.2005
  15. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Huomasin tuossa, että APEXin firmware pystyy näyttämään tekstityksen vaikka se olisi eri niminen kuin leffa. Testasin jopa useammalla elokuvalla
    Esim tällä tavalla nimetty toimii:
    Dump And Dumperer - When Harry Met Lloyd - Fin - 23.976fps - 2003 (SONIC).sub
    Dump.And.Dumperer.When.Harry.Met.Lloyd.2003.DVDSCR.AC3.XviD-SONIC.avi

    , mutta sitten kokeilin yhtä srt-tekstitystä, jonka nimi oli samalla tavalla elokuvan kanssa (69merkkiä), niin sitä tekstitystä ei suostunut näyttämään


    Ja tuosta ajoittaisesta sekoamisesta, niin minun soittimessani sitä tapahtuu yleensä kaukosäätin napin panalluksesta, mutta ei koskaan leffaa pyörittäessä.
    http://personal.inet.fi/koti/temi/kuvat/01.jpg

    Kiinnoistaisi kuulla onko kellään Uudemman Procasterin omistajalla seonnut näyttö koskaan minun ProCaster V1 firmwarella?
    Edit.
    Testasin tuon nimen pituuteen vaikuttavan bugin ja se löytyi tuolta
    ROM:00020AA0 CMP R5, #0x32 ; '2' vaihdoin 0x32->0x78
    Testasin elokuvan ennen ja jälkeen modin. Ennen ei näkyny tekstejä, mutta nyt näkyy. 120 merkkiä pitäisi olla tarpeeksi tiedostonimelle. En sitten tiedä miten toimisi jos käyttäisi FF:ää, mutta tuskin tulee kokeiltua.

     
    Viimeksi muokattu: 07.08.2005
  16. Shiroi70

    Shiroi70 Guest

    Mielenkiintoista!

    Ilmeisesti tuo sinun havaitsemasi tekstitysongelma liittyy tuohon aiemmin mainitsemaani ongelmaan:

    Näet jos levyn avit jakavat saman nimen osan, niin ilmeisesti syntyy jonkinnäköinen ristiriita ja missään tiedostossa ei tekstitykset toimi:

    Esim. Näissä kolmessa levyssä ei tekstitykset toimi lainkaan:

    http://kotisivu.mtv3.fi/jounivalkonen/yami.jpg
    http://kotisivu.mtv3.fi/jounivalkonen/muyo.jpg
    http://kotisivu.mtv3.fi/jounivalkonen/onizuka.jpg


    Sen sijaa tässä ei myöskään sarjan jaksoissa tekstitykset toimi, mutta elokuvien tekstitykset taas toimivat normaalisti:
    http://kotisivu.mtv3.fi/jounivalkonen/tenchi.jpg

    Kuitenkin tämä ongelma näyttäisi olevan todella mystinen!

    Luonnollisesti tekstityksien formaatti on kaikissa sama ja tekstitykset ovat toimineet ongelmitta monissa muissa levyissä, joissa ei ole käytetty vastaavaa yhdenmukaisuuksia sisältävää nimeämistapaa, vaan normaalia "00.jakson nimi.avi".

    Hämäräksi kuitenkin jää, että mikä Firmwarelle sitten on riittävän samankaltainen aiheuttaakseen konflikteja?

    Hyvä kuitenkin, että tuo ylipitkien nimien bugi löytyi!
    120 merkkiä varmaan riittänee, kun Nero tuntuu pätkivän tiedostonnimen noin 100 merkin kohdalla kun käyttää ISO jotain DVD-formaattia.
     
    Moderaattorin viimeksi muokkaama: 08.08.2005
  17. RekookeR

    RekookeR Member

    Liittynyt:
    06.10.2004
    Viestejä:
    68
    Kiitokset:
    0
    Pisteet:
    16
    tuon ongelmanhan voi välttää laittamalla kaikki omiin kansioihinsa, mutta se on kovin monimutkaista, ainakin valmiiden levyjen kanssa.
    Olisi mielenkiintoista tietää miten soitin tunnistaa tekstityksen tiedostolle, koska noissa esimerkeissähän tiedoston alut oli kuitenkin eri nimisiä.

    Ottaakohan sitten nimestä pisimmän sanan ja vertailee sitä tekstitykseen tai käyttää jotain prosentuaalista tarkkuutta
     
  18. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Joissain modeissa on tehty tuo erinimisten tuki sillä tavalla, että soitin lataa kaikki tekstitykset levyltä taikka kansiosta ja itse voi subtitle napilla valita oikean tekstityksen. Tämä ominaisuus ainakin Yamada 6700 NewAge-firmwareissa ja jossain Pioneerin modissa, mutta tämä on ensimmäinen kerta kun alkuperäisessä firmwaressa on tuki erinimisille teksteille.
     
  19. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Tämä mitä aiemmin kirjoitin oli disinformaatiota. Tutkin alkuperäistä yamada 6600 firmwarea ja sen koodia ei pystynyt muuttamaan järjelliseksi 8032 koodiksi.
     
    Viimeksi muokattu: 10.08.2005
  20. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Tämä asia oli kunnossa APEX-armissa ROM4689C
    Vähän epäselvää minkälaisen koodin pätkän tuo tarvitsee
     
    Viimeksi muokattu: 12.08.2005
  21. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    "all you need is to write a 8032 TAG-display routine. You can find teh sample ones in the Cherry's Yamada 6600 v15 (Bank1 ROM:F860)" (Lähde http://groups.yahoo.com/group/mt13x9/message/4546)

    eli tämä koodi pitää kaivaa tuosta NA_15 firmwaresta. Koodi pitäisi olla melko helposti siirrettävissä, tarvitsee vain pystyä kääntämään jotkin funktiokutsut vastaaviin Apex:in osoitteisiin. Minulla on niistä melko monta tiedossa, ja yamada:n funktiot ovat hyvin raportoitu (tiedosto MTK1389CodeLocs2005Apr.rar osoitteessa http://groups.yahoo.com/group/mt13x9/files/Documents/).
    Pitää jossain vaiheessa raportoida nämä tietämäni apex osoitteet tuohon taulukkoon


     
    Viimeksi muokattu: 13.08.2005

Jaa tämä sivu