Angepinnt SidTool Bug Reports

  • SidTool Bug Reports

    Wenn ich SidTool minimiert schliesse und später wieder öffne wird es minimiert geöffnet, wäre cool wenn es immer maximiert geöffnet wird beim ersten Start des Programms! :freude

    Bei manchen Liedern im WinVice modus verschwinden die Author Namen oder werden gar nicht angezeigt, obwohl sie eingetragen sind, ob das auch bei dem anderen SidEmus im SidTool passiert kann ich so nicht sagen. :) Aber keine sorge, SidTool löscht die Namen nicht! :D Habs getestet sind immer noch vorhanden wenn ich es nur mit Sidplay2/w öffne... ( z.B. bei dem Sid in :\C64Music\MUSICIANS\G\G-Fellow\Goldhawk_4.sid :weg:Also bei dem genannten Lied, passiert das bei allen SidEmus in SidTool....muss C64 Magic sein :schreck!:

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von G-Fellow ()

  • RE: SidTool Bug Reports

    G-Fellow schrieb:

    Wenn ich SidTool minimiert schliesse und später wieder öffne wird es minimiert geöffnet, wäre cool wenn es immer maximiert geöffnet wird beim ersten Start des Programms! :freude


    SidTool speichert die Position ab, bei der es zuletzt war und öffnet sich dementsprechend, wenn es neu gestartet wird. Schliess es in maximiertem Zustand und Dein Problem ist erledigt :D :splat:


    G-Fellow schrieb:


    Bei manchen Liedern im WinVice modus verschwinden oder werden gar nicht angezeigt, die Author Namen obwohl sie eingetragen sind, ob das auch bei dem anderen SidEmus im SidTool passiert kann ich so nicht sagen. :) Aber keine sorge, SidTool löscht die Namen nicht! :D Habs getestet sind immer noch vorhanden wenn ich es nur mit Sidplay2/w öffne...


    Hä? :gruebel Ich schau nachher mal zuhause, ob ich rausfinde, was Du meinst ;)

    Edit: Ja, es kann sein, das das ein besonderes Sid ist, wo im Dateiheader irgendwas anders ist.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Madman ()

  • Madman schrieb:


    SidTool speichert die Position ab, bei der es zuletzt war und öffnet sich dementsprechend, wenn es neu gestartet wird. Schliess es in maximiertem Zustand und Dein Problem ist erledigt :D


    Das ist aber dann die Trabi Ausgabe von SidTool ich will aber Ferrari :P

    Ferrari wäre dann: "Sidtool speichert die Position ab und den Pfad wo ich zuletzt ein Lied gehört habe und öffnet immer beim ersten Start maximiert und geht zu dem zuletzt gehörten Lied, Pfad, wer das nicht will macht ein Häkchen weg bei "Aktuelle Position speichern" :@1@:
  • So wie es ist, ist es doch völlig ok? Man sieht ja bald nix mehr vor lauter Haken :)
    Aber ich kann Dir den Quellcode schicken, dann kannst Du Dir das gerne anpassen :prof:

    @Hol: Danke :winke:
  • Ist schon ok. Erst hat das Tool halt garnix gespeichert und wurde mal hier und mal da geöffnet, darum wurde ich gebeten, das zu speichern, wo und wie das Fenster erscheint, und das macht das Tool jetzt eben standardmäßig. :help: Ist ja nur 1 Klick das zu maximieren. ;) Ausserdem kannst Du Dir das schon anpassen. zB auf einem Widescreen würde das maximieren völlig überflüssig sein. Und wie es der Zufall will, habe ich zuhause einen 16:10 Monitor :freude
  • Hab nen 22′ zoll TFT Flat Pro Monitor... is ja ok, war ja nur Idee, wenn vorher einer das so wollte...dachte ja nur es wär cool wenn er sich den Pfad merkt wo er gerade war und das man das auch an und ausschalten kann. :roll:
  • Ja, Ideen sammle ich gerne, ich hab auch schon diverse Anregungen umgesetzt, aber eben nicht alles ;)
    Ideen hätte ich auch noch ne Menge, zB könnte man die Sids bewerten (Skala 1-5), man könnte eine Webseite aufsetzen, wo die Leute Ihre PlayListen aus dem Tool heraus veröffentlichen können, damit man Statistiken über die Sids sammeln kann, um zB das Beste Sid aller Zeiten zu ermitteln. Man könnte auch noch eine Suche einbauen, um bei remix.kwed.org direct zu suchen.
    Allein die Zeit und auch ein bisschen die Motivation fehlen mir dazu.
    Aber das abspeichern des zuletzt gespielten Sids kriege ich recht einfach hin.

    Warum der Titel bei diesem von Dir erähnten Sid nicht erscheint, kann ich nicht sagen. Da er sonst überall erscheint, muss irgendwas mit der SidDatei anders sein als bei den anderen, den die
    Routine, die die Daten ausliest, ist immer dieselbe :roll:
  • Madman schrieb:


    Warum der Titel bei diesem von Dir erähnten Sid nicht erscheint, kann ich nicht sagen. Da er sonst überall erscheint, muss irgendwas mit der SidDatei anders sein als bei den anderen, den die
    Routine, die die Daten ausliest, ist immer dieselbe :roll:
    Ja der Macher von dem Lied is schon nen komischer Kauz, kann gut sein das er da irgendwas hinbekommen hat, was selbst Steppe/HVSC nicht gemerkt hat als er es eingefügt hat.... :thumbup:
  • Das mit den fehlenden Headereinträgen ist mir auch schon aufgefallen. Spezielle bei G-Fellow's tune und übrigens auch in /MUSICIANS/A/Arnold_Kenneth/Ultima_IV-Quest_of_Avatar.sid werden Headereinträge mit genau 31 Chars Länge verschluckt. Das ist PSID-konform, die Dateien sind "clean". Vielleicht hast du da nen Typo im Quellcode oder irrtümlich die 28 Chars vom Dateinamen übernommen, Dietmar?
  • Wuuuuuuuusch... Bin auch mal wieder da! :D

    Es wurden ja die "Autoplay" buttons eingebaut, um Playlisten besser bearbeiten zu können. Dabei ist mir aufgeffallen, daß wenn eine SID läuft und ich dann auf eine andere klicke, die aktuelle SID gestoppt wird. Ich weiss nicht, ob das so vorgesehen war. Schöner wäre meiner Meinung nach, wenn das aktuelle SID weiterlaufen würde, wenn ich ein anderes anklicke.

    Und dann ist mir noch aufgefallen, daß im Autoplay-Modus aus der Playslist heraus die Stopp Taste oben links deaktiviert wird. Ist dann natürlich auch nicht so schön, wenn man mal stoppen möchte.

    Aber sonst alles bestens!!
  • Also ich lese genau 31 chars ein (Zeile 45 ff). Kann es sein das bei diesen Sids das terminierende Byte noch Daten enthält?
    Hier mal mein Code, vielleicht sieht ja einer was, der sich mit sowas auskennt :party:
    Chr(0) ist das NullByte soweit ich mich erinnere, InStr gibt die Position des Zeichens zurück :blah!

    Quellcode

    1. Private Function Load() As Boolean
    2. 'ASCII read file to fetch tune nfo
    3. Me.Title = "<?>"
    4. Me.Author = "<?>"
    5. Me.Released = "<?>"
    6. Try
    7. 'Binary read for startsong/subsong info
    8. Dim fs As New IO.FileStream(Me.Fullpath, IO.FileMode.Open)
    9. Dim br As IO.BinaryReader = New IO.BinaryReader(fs, System.Text.Encoding.Default)
    10. 'Read 4 Bytes. 1st Byte identifies Sid version. Bytes 2-3 are identical for both versions
    11. Dim rb(3) As Byte
    12. rb = br.ReadBytes(4)
    13. If rb(0) = 82 Then
    14. Me.Sidversion = "RSID" 'TinySID cant play those !
    15. ElseIf rb(0) = 80 Then
    16. Me.Sidversion = "PSID"
    17. End If
    18. 'Read 2 more bytes, contains version number in 2
    19. rb = br.ReadBytes(2)
    20. Me.Versionnumber = rb(1)
    21. 'Next 2 Bytes contain data offset. 1st byte is always 00
    22. rb = br.ReadBytes(2)
    23. Me.dataOffset = "$00" & Hex(rb(1))
    24. '2more bytes. loadAdress
    25. rb = br.ReadBytes(2)
    26. Me.loadAdress = hex2string(Convert.ToInt16(rb(0)), Convert.ToInt16(rb(1)))
    27. rb = br.ReadBytes(2)
    28. Me.initAdress = hex2string(Convert.ToInt16(rb(0)), Convert.ToInt16(rb(1)))
    29. rb = br.ReadBytes(2)
    30. Me.playAdress = hex2string(Convert.ToInt16(rb(0)), Convert.ToInt16(rb(1)))
    31. rb = br.ReadBytes(2)
    32. Me.Subsongs = rb(1)
    33. rb = br.ReadBytes(2)
    34. Me.Startsong = rb(1)
    35. Me.Currentsong = Me.Startsong
    36. 'Contains speed settings. Skip for now
    37. rb = br.ReadBytes(4)
    38. Dim c As Char
    39. Me.Title = br.ReadChars(31)
    40. Dim tmpLength = InStr(Me.Title, Chr(0), CompareMethod.Binary)
    41. Me.Title = Left(Me.Title, tmpLength)
    42. c = br.ReadChar 'Read the useless terminating zero byte
    43. Me.Author = br.ReadChars(31)
    44. tmpLength = InStr(Me.Author, Chr(0), CompareMethod.Binary)
    45. Me.Author = Left(Me.Author, tmpLength)
    46. c = br.ReadChar 'Read the useless terminating zero byte
    47. Me.Released = br.ReadChars(31)
    48. tmpLength = InStr(Me.Released, Chr(0), CompareMethod.Binary)
    49. Me.Released = Left(Me.Released, tmpLength)
    50. c = br.ReadChar 'Read the useless terminating zero byte
    51. Dim sidnfo As String = ""
    52. 'buggy from here? reads wrong nfo?
    53. Me.Viceoptions = ""
    54. sidnfo = IntToBinString(Convert.ToInt16(br.ReadByte))
    55. sidnfo = IntToBinString(Convert.ToInt16(br.ReadByte))
    56. If sidnfo.Substring(12, 2) = "00" Then
    57. Me.SIDClockspeed = "<?>"
    58. Me.Viceoptions = Sidtool.ViceSidclock
    59. ElseIf sidnfo.Substring(12, 2) = "01" Then
    60. Me.SIDClockspeed = "PAL"
    61. Me.Viceoptions = "-pal"
    62. ElseIf sidnfo.Substring(12, 2) = "10" Then
    63. Me.SIDClockspeed = "NTSC"
    64. Me.Viceoptions = "-ntsc"
    65. ElseIf sidnfo.Substring(12, 2) = "11" Then
    66. Me.SIDClockspeed = "PAL&NTSC"
    67. Me.Viceoptions = Sidtool.ViceSidclock
    68. Else
    69. Me.Viceoptions = Sidtool.ViceSidclock
    70. End If
    71. If sidnfo.Substring(10, 2) = "00" Then
    72. Me.SIDChip = "<?>"
    73. Me.Viceoptions &= " " & Sidtool.ViceSIDModel
    74. ElseIf sidnfo.Substring(10, 2) = "01" Then
    75. Me.SIDChip = "6581"
    76. Me.Viceoptions &= " -sidmodel 0"
    77. ElseIf sidnfo.Substring(10, 2) = "10" Then
    78. Me.SIDChip = "8580"
    79. Me.Viceoptions &= " -sidmodel 1"
    80. ElseIf sidnfo.Substring(10, 2) = "11" Then
    81. Me.SIDChip = "Any"
    82. Me.Viceoptions &= " " & Sidtool.ViceSIDModel
    83. Else
    84. Me.Viceoptions &= " " & Sidtool.ViceSIDModel
    85. End If
    86. rb = br.ReadBytes(1)
    87. Me.startPage = hex2string(Convert.ToInt16(rb(0)), 0)
    88. rb = br.ReadBytes(1)
    89. Me.pageLength = hex2string(0, Convert.ToInt16(rb(0)))
    90. br.Close()
    91. fs.Close()
    92. Return True
    93. Catch ex As Exception
    94. MessageBox.Show("Error loading SID")
    95. Sidtool.Statusbar.Text = "Error"
    96. Return False
    97. End Try
    98. End Function
    Alles anzeigen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Madman ()

  • Also speziell die beiden o.g. Songs (Ultima IV und G-Fellow's song) sind zero-terminiert, das sollte dann also funktionieren. Denke, daß der Fehler dann doch im Code liegt, kann dazu aber mangels Plan nix sagen.
  • So, Probleme in 1.3.1 behoben.
    Was leider nicht geht, ist, das SID weiterspielen zu lassen, wenn die AutoPlay Checkbox aus ist.
    Vielleicht hab ich da nächstes mal noch ne Idee. Mal drüber meditieren. :zzz: