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. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    aikalailla koodia tuossa mp3 TAG näytössä, tässä ensimmäinen pätkä:
    EDIT: lisäsin funktioden nimiä. Huomaan että joitakin muitakin XRAM osoitteita pitää kaivaa esiin. Saapa nähdä onko ne kuinka helppoja (ovat samoja kuin tiedostoselaimen koodissa) vertailla. EDIT: Apex:in 8032 BANK 1:stä löytyy riittävästi tilaa. Koodin voisi vaikka laittaa samaan osoitteeseen (käytännöllistä!). Keskittymistä vaatii nuo funktiokutsut ja XRAM osoitteiden vastaavuuksien selvittäminen. Sitten pitää vielä tutkia tiedostoselaimen koodi ja katsoa miten nämä ominaisuudet on kytketty muuhun koodin, sitten vain kovaa testausta.
    ROM:F860 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E
    ROM:F860 12 F9 72 lcall ROM_F972
    ROM:F863 70 01 jnz ROM_F866
    ROM:F865 22 ret
    ROM:F866 ; ---------------------
    ROM:F866 12 FA 24 lcall ROM_FA24
    ROM:F869 54 7F anl A, #0x7F
    ROM:F86B 64 7F xrl A, #0x7F
    ROM:F86D 60 4F jz ROM_F8BE
    ROM:F86F 74 00 mov A, #0
    ROM:F871 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F874 F0 movx @DPTR, A
    ROM:F875 90 FB 5F mov DPTR, #0xFB5F <-- Apex: FBC0 (tekstin pituus)
    ROM:F878 E0 movx A, @DPTR
    ROM:F879 F8 mov R0, A
    ROM:F87A 90 FB 60 mov DPTR, #0xFB60 <--- APEX: ????
    ROM:F87D E0 movx A, @DPTR
    ROM:F87E F9 mov R1, A
    ROM:F87F 90 FB 61 mov DPTR, #0xFB61 <-- = Apex FBC2
    ROM:F882 E0 movx A, @DPTR
    ROM:F883 FA mov R2, A
    ROM:F884 90 FB 62 mov DPTR, #0xFB62 <-- = Apex FBC3
    ROM:F887 E0 movx A, @DPTR
    ROM:F888 FB mov R3, A
    ROM:F889 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F88C E0 movx A, @DPTR
    ROM:F88D FC mov R4, A
    ROM:F88E E4 clr A
    ROM:F88F FD mov R5, A
    ROM:F890 FE mov R6, A
    ROM:F891 FF mov R7, A
    ROM:F892 12 FA 83 lcall ROM_FA83
    ROM:F895 EA mov A, R2
    ROM:F896 FF mov R7, A
    ROM:F897 E9 mov A, R1
    ROM:F898 FC mov R4, A
    ROM:F899 E8 mov A, R0
    ROM:F89A FD mov R5, A
    ROM:F89B 12 05 3B [bold]lcall ARM_GetCharDRAM[/bold]
    ROM:F89E EF mov A, R7
    ROM:F89F 70 04 jnz ROM_F8A5
    ROM:F8A1 74 20 mov A, #0x20 ; ' '
    ROM:F8A3 80 05 sjmp ROM_F8AA
    ROM:F8A5 C3 clr C
    ROM:F8A6 94 FA subb A, #0xFA ; '·'
    ROM:F8A8 40 0A jc ROM_F8B4
    ROM:F8AA FB mov R3, A
    ROM:F8AB EA mov A, R2
    ROM:F8AC FF mov R7, A
    ROM:F8AD E9 mov A, R1
    ROM:F8AE FC mov R4, A
    ROM:F8AF E8 mov A, R0
    ROM:F8B0 FD mov R5, A
    ROM:F8B1 12 05 53 [bold]lcall ARM_PutCharDRAM[/bold]
    ROM:F8B4 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F8B7 E0 movx A, @DPTR
    ROM:F8B8 04 inc A
    ROM:F8B9 F0 movx @DPTR, A
    ROM:F8BA 64 7F xrl A, #0x7F
    ROM:F8BC 70 B7 jnz ROM_F875
    ROM:F8BE 74 FF mov A, #0xFF
    ROM:F8C0 12 FA 32 lcall ROM_FA32
    ROM:F8C3 E4 clr A
    ROM:F8C4 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F8C7 F0 movx @DPTR, A
    ROM:F8C8 90 FB 5F mov DPTR, #0xFB5F <-- = Apex FBC0

    ROM:F8CB E0 movx A, @DPTR
    ROM:F8CC F8 mov R0, A
    ROM:F8CD 90 FB 60 mov DPTR, #0xFB60 <--- APEX: ????
    ROM:F8D0 E0 movx A, @DPTR
    ROM:F8D1 F9 mov R1, A
    ROM:F8D2 90 FB 61 mov DPTR, #0xFB61 <--- APEX: ????
    ROM:F8D5 E0 movx A, @DPTR
    ROM:F8D6 FA mov R2, A
    ROM:F8D7 90 FB 62 mov DPTR, #0xFB62 <--- APEX: ????
    ROM:F8DA E0 movx A, @DPTR
    ROM:F8DB FB mov R3, A
    ROM:F8DC 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F8DF E0 movx A, @DPTR
    ROM:F8E0 90 FA CF mov DPTR, #0xFACF <--- APEX: ????
    ROM:F8E3 93 movc A, @A+DPTR
    ROM:F8E4 90 FA DA mov DPTR, #0xFADA <--- APEX: ????
    ROM:F8E7 93 movc A, @A+DPTR
    ROM:F8E8 FC mov R4, A
    ROM:F8E9 E4 clr A
    ROM:F8EA FD mov R5, A
    ROM:F8EB FE mov R6, A
    ROM:F8EC FF mov R7, A
    ROM:F8ED 12 FA 83 lcall ROM_FA83
    ROM:F8F0 90 FB 68 mov DPTR, #0xFB68 <--- APEX: ????
    ROM:F8F3 E8 mov A, R0
    ROM:F8F4 F0 movx @DPTR, A
    ROM:F8F5 90 FB 67 mov DPTR, #0xFB67 <--- APEX: ????
    ROM:F8F8 E9 mov A, R1
    ROM:F8F9 F0 movx @DPTR, A
    ROM:F8FA 90 FB 66 mov DPTR, #0xFB66 <-- Apex: FBC7
    ROM:F8FD EA mov A, R2
    ROM:F8FE F0 movx @DPTR, A
    ROM:F8FF 90 FB 65 mov DPTR, #0xFB65 <--- APEX: FBC6
    ROM:F902 EB mov A, R3
    ROM:F903 F0 movx @DPTR, A
    ROM:F904 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F907 E0 movx A, @DPTR
    ROM:F908 90 FA CF mov DPTR, #0xFACF <--- APEX: ????
    ROM:F90B 93 movc A, @A+DPTR
    ROM:F90C 90 FA DF mov DPTR, #0xFADF <--- APEX: ????
    ROM:F90F 25 E0 add A, ACC ; Accumulator
    ROM:F911 93 movc A, @A+DPTR
    ROM:F912 F8 mov R0, A
    ROM:F913 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F916 E0 movx A, @DPTR
    ROM:F917 90 FA CF mov DPTR, #0xFACF <--- APEX: ????
    ROM:F91A 93 movc A, @A+DPTR
    ROM:F91B 90 FA E0 mov DPTR, #0xFAE0 <--- APEX: ????
    ROM:F91E 25 E0 add A, ACC ; Accumulator
    ROM:F920 93 movc A, @A+DPTR
    ROM:F921 F9 mov R1, A
    ROM:F922 90 FB EB mov DPTR, #0xFBEB <--- APEX: FC18
    ROM:F925 E8 mov A, R0
    ROM:F926 F0 movx @DPTR, A
    ROM:F927 A3 inc DPTR
    ROM:F928 E9 mov A, R1
    ROM:F929 F0 movx @DPTR, A
    ROM:F92A 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F92D E0 movx A, @DPTR
    ROM:F92E 90 FA CF mov DPTR, #0xFACF <--- APEX: ????
    ROM:F931 93 movc A, @A+DPTR
    ROM:F932 90 FA E9 mov DPTR, #0xFAE9 <--- APEX: ????
    ROM:F935 25 E0 add A, ACC ; Accumulator
    ROM:F937 93 movc A, @A+DPTR
    ROM:F938 F8 mov R0, A
    ROM:F939 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F93C E0 movx A, @DPTR
    ROM:F93D 90 FA CF mov DPTR, #0xFACF <--- APEX: ????
    ROM:F940 93 movc A, @A+DPTR
    ROM:F941 90 FA EA mov DPTR, #0xFAEA <--- APEX: ????
    ROM:F944 25 E0 add A, ACC ; Accumulator
    ROM:F946 93 movc A, @A+DPTR
    ROM:F947 F9 mov R1, A
    ROM:F948 90 FB EE mov DPTR, #0xFBEE <-- Apex: FC1B
    ROM:F94B E8 mov A, R0
    ROM:F94C F0 movx @DPTR, A
    ROM:F94D A3 inc DPTR
    ROM:F94E E9 mov A, R1
    ROM:F94F F0 movx @DPTR, A
    ROM:F950 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F953 E0 movx A, @DPTR
    ROM:F954 90 FA CF mov DPTR, #0xFACF <--- APEX: ????
    ROM:F957 93 movc A, @A+DPTR
    ROM:F958 90 FA D4 mov DPTR, #0xFAD4 <--- APEX: ????
    ROM:F95B 93 movc A, @A+DPTR
    ROM:F95C FD mov R5, A
    ROM:F95D 7F 0E mov R7, #0xE
    ROM:F95F 12 05 4D [bold]lcall PS_B_41[/bold]
    ROM:F962 90 FB 53 mov DPTR, #0xFB53 <-- Apex: FBB4
    ROM:F965 E0 movx A, @DPTR
    ROM:F966 04 inc A
    ROM:F967 F0 movx @DPTR, A
    ROM:F968 64 05 xrl A, #5
    ROM:F96A 60 03 jz ROM_F96F
    ROM:F96C 02 F8 C8 ljmp ROM_F8C8
    ROM:F96F 02 F8 65 ljmp ROM_F865
    ROM:F96F ; End of function ROM_F860
     
    Viimeksi muokattu: 14.08.2005
  2.  
  3. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    APEX bank1: ROM:5665 7A FB mov R2, #0xFB ; '¹'
    on "; Max Font item 251 (char)" FILE BROWSER by MaBreaker ohjeen mukaan. Eli tuota muuttamalla pitäisi saada loput ascii merkit tiedostoselaimeen?
     
  4. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    0xFB53 on luultavasti apexissa 0xFB58. täysin varma en ole koska mistään ei löytynyt kunollista kiinnekohtaa

    Edit korjaan 0xFB53 on apexissa 0xFBB4
    0xFB66 on apexissa 0xFBC7
    0xFBEE on apexissa 0xFC1B
    0xFB65 on apexissa 0xFBC6
    0xFBEB on apexissa 0xFC18
     
    Viimeksi muokattu: 13.08.2005
  5. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    FBC7 miinus FB66 = 61
    FC1B miinus FBEE = 2D
    Muut osoitteet kuin FBEE ja FBEB on tähän mennessä saatu lisäämällä alkuperäiseen lukuun 61 (hex).Tämä saattaa auttaa etsinnässä. Tässä tunnistamani Bank1 funktiot (saattavat myös auttaa etsinnässä):
    //Bank 1: ROM:04B1 ARM_GetChar:, ROM:047B ARM_PutChar:, ROM:04D5 PREF_GetChar:, ROM:06DF ARM_Data:, ROM:06FD ARM_Put04:, ROM:0709 OSD_Disp_DirIcon:, ROM:070F OSD_Disp_DirBack:, ROM:0739 SUB_SetFont:, ROM:074B ARM_Put1B:, ROM:54E3 DIR_Disp_Filelist:, ROM:68A8 DIR_Disp_DirLine:, ROM:7475 DAC_SetFreq:, ROM:82EC OSD_PutARM_49:, ROM:883A OSD_Disp_FileName:, ROM:8ED1 DIR_File_Browser:, ROM:AF74 DIR_Clear_FileList:, ROM:AFAD Loop_clear_6_lines:, ROM:B3C3 SUB_SetStyle:, ROM:CC77 DAC_Main:, ROM:E5EB DIR_Set_Icon:, ROM:E808 DAC_Format:, ROM:E87B DAC_SetFormat:, ROM:E899 DIR_Disp_ScrollBar:
    //Bank 0: ROM:F4D5 DAC_SetType:, ROM:F587 ARM_PutChar:
    //ARM 1: ROM:0000D314 OSD_DisplayCharacter, ROM:0000D674 SUB_IsMpeg4SubtitleCharValid, ROM:0000DD6C SUB_CalcLineStartPosX, ROM:0000DDB6 SUB_CalcStartPosY, ROM:0000DE88 SUB_Mpeg4SubtitleText_Display

    B1: ??? ROM:0703 ARM_GetCharDRAM: ???
    B1: ??? ROM:0733 PutCharDRAM: ???
     
    Viimeksi muokattu: 09.09.2005
  6. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    FACF, FAD4, FAEA, FAE9, FAE0,FADF ja FADA ei esiinny yamadassa muualla kuin MP3 TAG -osassa (eli kaikki FA-alkuiset)
     
    Viimeksi muokattu: 14.08.2005
  7. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Pitää miettiä mistä tuossa on kyse. Veikkaisin että noilla osoitteilla rajataan jollain tavalla se alue jolle kirjoitetaan, mutta yllättävän hankala pulma. MTKWindows ohjelma kertoo kaikenlaista pikkuhyödyllistä kun laittaa debug rastin päälle, mutta vielä en ole keksinyt mitään kovin hyödyllistä. Alkuperäisestä apex firmwaresta sentään aukeaa tieto: PS_B_0x41 at 0x3B36B DisplayDRAMStr eli PS_B_41 pitäisi olla Bank 3:n osoitteessa B36B ?
     
    Viimeksi muokattu: 14.08.2005
  8. oam

    oam Guest

    Sanon vain, että hyvää työtä äijät!

    Viimeksi kun tsekkasin tämän foorumin väännettiin jotain uusia taustakuvia. Nyt homma on jo pro-tasolla :) Pitääpä päivittää tämä uusin firmiksenne omaankin koneeseen.
     
  9. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Uusien proCaster firmisten Subtitle style osiot Bank1
    6970-6AB0

    Max font item löytyy: bank1 ROM 58A6

    ARM osassa:
    42-merkin tiedostonimi bugi ROM 20C88 - 20C89
    Tekstitykseen liittyvä ajastusbugi ROM 3160-3161
    Erikoismerkit tied. seelaimeen D7BA-D7BB
     
    Viimeksi muokattu: 17.08.2005
  10. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    uudelle procasterille ajoin: MTK file browser patcher v0.2

    Using scrollbar at 586(0x24a),filename len 42(0x2a),selection bar at 578(0x242)

    Opened firmware file ZDVX2410.BIN, 1294672 bytes

    Patching scrollbar position:
    patched at 011921: 01 => 02
    patched at 011925: 50 => 4a
    patched at 01192b: 01 => 02
    patched at 01192f: 60 => 5a
    patched at 019396: 01 => 02
    patched at 01939a: 50 => 4a
    patched at 0193a0: 01 => 02
    patched at 0193a4: 60 => 5a

    Patching selection bar size:
    patched at 0129ab: 01 => 02
    patched at 0129ac: 36 => 42
    patched at 0129b3: 01 => 02
    patched at 0129b4: 36 => 42
    patched at 0129bb: 01 => 02
    patched at 0129bc: 36 => 42
    patched at 0129c3: 01 => 02
    patched at 0129c4: 36 => 42
    patched at 0129cb: 01 => 02
    patched at 0129cc: 36 => 42
    patched at 0129d3: 01 => 02
    patched at 0129d4: 36 => 42

    Patching file list clearing routine for Yakumo:
    patched at 01b5b2: 01 => 02
    patched at 01b5b0: 1c => 28

    Patching file name size:
    patched at 0186a3: 0e => 2a
    patched at 0186a7: 0e => 2a

    Eli tiedostoselaimen saa helposti leveämmäksi.
     
    Viimeksi muokattu: 17.08.2005
  11. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Kummassakin verkkokaupan firmwaressa näyttää olevan sama Checksum
    Minulla on omassa soittimessani nyt sisällä uudemman servon firmware ja mitään ongelmia en ole havainnut.
     
    Viimeksi muokattu: 18.08.2005
  12. bongart

    bongart Regular member

    Liittynyt:
    28.07.2005
    Viestejä:
    222
    Kiitokset:
    0
    Pisteet:
    26
    Molempien MD5 sum on f88ffb57f52738e142bafc117e346eac
     
  13. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    taidan kokeilla tuota firmwarea cdrw:ltä. Minulla on takuutakin laitteessa vielä runsas viikko ja tuo on virallinen firmware. Menee kuitenkin iltaan, soittimessa lähti juuri pyörimään Barbapapa :). (hah)
     
    Viimeksi muokattu: 18.08.2005
  14. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    Firmwaressa löytyi uusi piilovalikko: HDCD setup page
    Noita fontin värin valitoja voisi ehkä jotenkin muokata niin, että saisi mustalla reunalla olevat fontit. Ja sitten tuo erinimisten tekstien tuen saattaisi saada APEX firmwarea matkimalla, mutta en löydä vain tuota kohtaa ARM:ista
     
    Viimeksi muokattu: 18.08.2005
  15. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    No nyt on soittimessa tuo uudempi firmware 17.03.00.00 servolla. Näyttäisi ihan pikaisesti katsottuna toimivan, mutta onhan tuo aika ankean näköinen. Taustakuvat ja tiedostoselain täytyy ainakin korjata ennen kuin tuo tuota viitsii alkaa käyttää. Tekstityksen taustankin voisi ottaa kokonaan pois (vai saako sen valikosta).
     
  16. temi

    temi Active member

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

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    tässä rakenne joka on hyppytaulukko noihin 8:aan vaihtoehtoiseen tekstitystyyppiin:
    ROM:69ED 02 6A 05 ljmp ROM_6A05 ; Big White+BG
    ROM:69F0 02 6A 54 ljmp ROM_6A54 ; Small White
    ROM:69F3 02 6A 2C ljmp ROM_6A2C ; Big Yellow+BG
    ROM:69F6 02 6A 67 ljmp ROM_6A67 ; Small Yellow
    ROM:69F9 02 6A 05 ljmp ROM_6A05 ; Small White+BG
    ROM:69FC 02 6A 2C ljmp ROM_6A2C ; Small Yellow+BG
    ROM:69FF 02 6A 54 ljmp ROM_6A54 ; Big White
    ROM:6A02 02 6A 67 ljmp ROM_6A67 ; Big Yellow

    Pitäisi varmaan miettiä mitkä yhdistelmät olisivat parhaita, mutta ainakin jokaisen kohdat joissa "mov R3, #1" valitaan light grey background voisi vaihtaa arvon 0 (6A0F, 6A37, 6A84 ja 4. kohta jossain muualla). Väri 5 on siis Yellow. Fontin valintaa en vielä miettinyt.
     
    Viimeksi muokattu: 28.08.2005
  18. temi

    temi Active member

    Liittynyt:
    05.09.2004
    Viestejä:
    1,054
    Kiitokset:
    0
    Pisteet:
    66
    entä jo laittaisi noillle neljälle viimeiselle mustan reunan. Olisi ehkä helpoin
     
    Viimeksi muokattu: 18.08.2005
  19. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Pitää viikonloppuna miettiä tuota koodia. Musta reunus neljälle viimeiselle on hankalahko kun se tehdään lataamalla akkuun nolla ja sitten arvoa käytetään useamman rekisterin nollaamiseen. Mutta kyllä sen miettimällä selvittää. Tässä käytettävän fontin valinta.
    ROM:69BB E4......clr A
    ROM:69BC FF......mov R7, A <-- font = A =0
    --------------------------------------------------
    ROM:69C2 7F 08...mov R7, #8 <-- font = 8
    --------------------------------------------------
    ROM:69C9 E4......clr A
    ROM:69CA FF......mov R7, A <-- font = A =0
    miksi tarvitaan tämä kolmas kerta, sitä en vielä miettinyt.
     
    Viimeksi muokattu: 19.08.2005
  20. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    ROM:699D 7F 22 mov R7, #0x22 ; '"'
    ROM:699F 7E 00 mov R6, #0
    ROM:69A1 12 04 87 lcall PREF_GetChar
    ROM:69A4 90 FB AA mov DPTR, #0xFBAA
    ROM:69A7 EF mov A, R7
    ROM:69A8 F0 movx @DPTR, A
    Käyttäjän tekstitysasuvalinta haetaan, ja tallennetaan muistipaikkaan FBAA

    ROM:69DA 90 FB AA mov DPTR, #0xFBAA
    ROM:69DD E0 movx A, @DPTR
    ROM:69DE B4 08 00 cjne A, #8, ROM_69E1
    ROM:69E1
    ROM:69E1 ROM_69E1:
    ROM:69E1 40 03 jc ROM_69E6
    ROM:69E3 02 6A 7A ljmp ROM_6A7A

    tässä haetaan muistipaikan FBAA sisältö Akkuun ja verrataan sitä arvoon 8, jos arvo on eri niin C lippu asettuu (itse hyppyä tessä ei hyödynnetä). Seuraavaksi jos C on asetettu niin hypätään seuraavaan rakenteeseen (69E6).
    -------------------------
    ROM:69E6 90 69 ED mov DPTR, #0x69ED
    ROM:69E9 F8 mov R0, A
    ROM:69EA 28 add A, R0
    ROM:69EB 28 add A, R0
    ROM:69EC 73 jmp @A+DPTR
    Tämä on rakenne, jolla hypätään oikeaan kohtaan hyppytaulukkoa. A on jokin arvoista {0, 1, 2, 3 ,4, 5, 6, 7}. Tähän lukuun lisätään itsensä kahdesti (A=A+A+A) ja sitten tehdään suhteellinen hyppy osoitteeseen 0x69ED+A.
    ------------
    Jos muistipaikassa FBAA olisi ollut arvo 8 niin edelliseen rakenteeseen, tai hyppytaulukkoon ei olisi menty, jolloin tekstityksen ominaisuudet asetetaankin osoitteessa ROM_6A7A
     
    Viimeksi muokattu: 21.08.2005
  21. RistoE

    RistoE Regular member

    Liittynyt:
    26.02.2005
    Viestejä:
    277
    Kiitokset:
    0
    Pisteet:
    26
    Muita Procaster 002 (17.03.00.00 servo) osoitteita
    BANK 1:
    ROM:58A6 7A FB...mov R2, #0xFB ; '¹' ; Max Font item 251 (char)
    ROM:6970 SUB_SetStyle:
    ROM:8DCB OSD_Disp_FileName:
    ROM:B536 DIR_Clear_FileList:
    ROM:938F DIR_File_Browser:
    ROM:85D1 DIR_Text_Filter:
    ROM:EFA6 DIR_Set_Icon:
    ROM:F293 DIR_Disp_ScrollBar:
    ROM:6BF2 DIR_Disp_DirLine:
    ROM:8302 DIR_Highlight_File:
    ROM:86BE SetMpeg4SubtitleParams:
    BANK 0:
    ROM:F328 ARM_GetChar
    BS:67_B0:F632 ARM_PutChar
    BS:184_B0:F400 ARM_GetCharDRAM
    BANK 3:
    BS:188_B3:B506 OSD_Clear_DirLine
    ROM:E847 SUB_SetFont
    BS:89_B3:4886 ARM_Data
    BS:194_B3:E579 ARM_Put1B
    ROM:E7BD ARM_Put04
     
    Viimeksi muokattu: 21.08.2005

Jaa tämä sivu