Autor Wątek: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)  (Przeczytany 24299 razy)

Gryzor

  • *****
  • Wiadomości: 1831
  • Miejsce pobytu:
    Warszawa
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #15 dnia: 2017.02.12, 21:11:41 »
Znajac troche VB6 zawsze mozesz sprobowac z VB.NET. Zrobienie prostej aplikacji zajmie chwile.
Zobacz jak Ci idzie i zdecydujesz co dalej. Nie zaczynaj tylko od zaawansowanych funkcji, bo polegniesz na starcie.
"Skomplikowane" to pojecie wzgledne - zalezy co i dla kogo. Jak czlowiek nie ma motywacji, to wyniesienie smieci tez jest skomplikowane   ;)


Abrimaal

  • *****
  • Wiadomości: 963
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #16 dnia: 2017.02.12, 22:19:59 »
Trudno o motywację, kiedy zakładając w 2013 archiwum AYGOR liczyłem, że do projektu włączy się przynajmniej kilkanaście osób z całej populacji naszej planety. Tymczasem przez 3 lata comiesięcznych aktualizacji, porządkowania, grzebania w grach, słuchania zapętlonych utworów żeby ustalić czas itd, jedynie dwie osoby - Garvalf i Zlew przysłały swoje utwory, za co im serdecznie dziękuję. Dziękuję także osobom aktywnym na tym forum, które pomogły naprowadzić dlaczego utwór nie gra, jak zbudowany jest konkretny player czy inny format muzyczny (typu .ayc czy .ym).
Spróbuję z VB.NET, ponieważ nie chcę zostawić zawieszonego projektu na tym etapie, a metodą dotychczasową nie znajdę czasu na dodawanie więcej niż kilkadziesiąt utworów w miesiącu. To mniej więcej taka ilość wychodzi na bieżaco z okazji parties i compos, a do tej pory nie ma np. muzyki z Boulder Dash, który wyszedł w 1984 :)
AY Music, ULA plus.

silenter

  • *****
  • Wiadomości: 1337
  • Miejsce pobytu:
    Warszawa/Radzymin
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #17 dnia: 2017.03.05, 20:40:01 »
Mam na myśli opanowanie podstaw programowania w wybranym języku czy środowisku korzystającym z gotowych bibliotek i wypróbowanych, sprawnie działających aplikacji.
Jeśli mam w ogóle zacząć, to od pisania narzędzia open source, które jest mi najbardziej potrzebne w jak najprostszym wydaniu. Nauczyć się w jaki sposób otworzyć plik, odczytać jego nagłówek, zapisać pod inną nazwą, otworzyć kolejny plik itd. Rozbudować o dodatkowe elementy i zastępować gotowce własnymi rozwiązaniami zawsze można w miarę postępu.

Ja ci pomogę. Proponuję VisualStudio i język C#. To jest bardzo potężne narzędzie. Obecnie kompiluje na Windows 32/64, Linux, Mac OSX , IOS i Android.

Mam duże doświadczenie w programowaniu w tym języku.

Ewentualnie w pasalu (Delphi).

Oba środowiska obecnie możesz mieć całkowicie za darmo.

Jeśli masz ochotę to więcej na PW.
128k +2 UK issue 1, JS128, FDD3000 in restoration, ZAXON MGT +D, PEAR AmpY, Pear ExEar :), PEAR TI-OF-TTL+FDD35, co to tu robi??? => 2xCDTV&A500

https://soundcloud.com/silenter

https://www.youtube.com/channel/UCKZhL7Lq1zUDDnRDTJKhN4A

Abrimaal

  • *****
  • Wiadomości: 963
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #18 dnia: 2017.03.05, 21:25:43 »
To jest myśl. Sam AYMaker i AYSplitter są napisane w Delphi i przynajmniej wiem, że da się w tym języku zrobić to, co potrzebne.
Jednak kompilator, którego używałem (Free Pascal Compiler) z oryginalnego źródła kompilował .exe, który nie działał prawidłowo. Visual Studio + Delphi to może być zestaw, którego szukam.
AY Music, ULA plus.

silenter

  • *****
  • Wiadomości: 1337
  • Miejsce pobytu:
    Warszawa/Radzymin
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #19 dnia: 2017.03.05, 22:15:44 »
Visual Studio + Delphi to może być zestaw, którego szukam.
Polecam Visual Studio + C# - mam ogromne doświadczenie (zarówno w pascalu jak i c#)
Delphi ma możliwości ale wprowadza sporo kłopotów.
C# jest językiem nowoczesnym o ogromnych możliwościach bardzo przejrzystym i spójnym z ogromnym środowiskiem programistów.

Emulator Spectrum'a napisany w c#
https://zxmak2.codeplex.com/
128k +2 UK issue 1, JS128, FDD3000 in restoration, ZAXON MGT +D, PEAR AmpY, Pear ExEar :), PEAR TI-OF-TTL+FDD35, co to tu robi??? => 2xCDTV&A500

https://soundcloud.com/silenter

https://www.youtube.com/channel/UCKZhL7Lq1zUDDnRDTJKhN4A

Abrimaal

  • *****
  • Wiadomości: 963
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #20 dnia: 2017.03.05, 23:36:37 »
Powiedz mi jeszcze jedno, czy w C# można "includować" program w innym języku, np. w Delphi? Podobnie jak np na stronie internetowej można łączyć HTML, PHP, JavaScript i inne.
AY Music, ULA plus.

silenter

  • *****
  • Wiadomości: 1337
  • Miejsce pobytu:
    Warszawa/Radzymin
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #21 dnia: 2017.03.06, 09:14:26 »
Powiedz mi jeszcze jedno, czy w C# można "includować" program w innym języku, np. w Delphi? Podobnie jak np na stronie internetowej można łączyć HTML, PHP, JavaScript i inne.
W ramach jednego rozwiązania (solucji) możemy używać dowolnych języków .NET (natywnie wspierane przez Microsoft: C#, Vb.NET, F#, Javascript) inne zewnętrzne (Pascal Prism).
Dodatkowo można linkować biblioteki DLL napisane w dowolnym języku.
128k +2 UK issue 1, JS128, FDD3000 in restoration, ZAXON MGT +D, PEAR AmpY, Pear ExEar :), PEAR TI-OF-TTL+FDD35, co to tu robi??? => 2xCDTV&A500

https://soundcloud.com/silenter

https://www.youtube.com/channel/UCKZhL7Lq1zUDDnRDTJKhN4A

Gryzor

  • *****
  • Wiadomości: 1831
  • Miejsce pobytu:
    Warszawa
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #22 dnia: 2017.03.06, 17:17:30 »
Widze, ze uparcie idziecie droga archeo  ;D

http://www.wothke.ch/spectreZX/

Abrimaal

  • *****
  • Wiadomości: 963
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #23 dnia: 2017.03.07, 22:47:25 »
Cytuj
Dodatkowo można linkować biblioteki DLL napisane w dowolnym języku.
A czy w ten sam sposób można linkować gotowe .exe?

Cytuj
Widze, ze uparcie idziecie droga archeo
SpectreZX wygląda na fantazję autora, jak mógłby grać ZX gdyby miał z 2MB RAM i kilka razy szybszy procesor. Porównaj aktywny właśnie temat SID na Spectrum. Chyba, że masz na myśli temat user interface. Ktoś jednak musiał te pliki muzyczne w różnych formatach przygotować. :)

AY Music, ULA plus.

silenter

  • *****
  • Wiadomości: 1337
  • Miejsce pobytu:
    Warszawa/Radzymin
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #24 dnia: 2017.03.07, 22:56:19 »
Cytuj
Dodatkowo można linkować biblioteki DLL napisane w dowolnym języku.
A czy w ten sam sposób można linkować gotowe .exe?
A to jest ciekawe pytanie na które można odpowiedzieć nie/tak.

Zasadniczo nie można linkować exe bo w przeciwieństwie do DLL exe nie definiuje funkcji eksportowanych.
Wyjątkiem są exe programów w architekturze .NET bo co prawda exe niczego nie eksportuje, ale całość kodu można wciągnąć jako referencję (bez względu na język w jakim zostało to napisane - jedyny warunek to .NET)

Jak chcesz to napisz konkretniej czego potrzebujesz. Napiszę ci szkice a potem sobie to rozwiniesz.
128k +2 UK issue 1, JS128, FDD3000 in restoration, ZAXON MGT +D, PEAR AmpY, Pear ExEar :), PEAR TI-OF-TTL+FDD35, co to tu robi??? => 2xCDTV&A500

https://soundcloud.com/silenter

https://www.youtube.com/channel/UCKZhL7Lq1zUDDnRDTJKhN4A

Gryzor

  • *****
  • Wiadomości: 1831
  • Miejsce pobytu:
    Warszawa
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #25 dnia: 2017.03.08, 11:23:15 »
Odnosnie SpectreZX chodzilo mi o technologie interfejsu czyli JavaScript. Co prawda WebAudio API to jeszcze troche beta, ale jak widac i tak juz mozna sporo zdzialac. Dalej jednak uwazam, ze powinienes zaczac od najprostszych funkcji i narzedzi ktore brzmia znajomo. No chyba ze silenter podejmie sie zrobienia wszystkiego co wymyslisz :-)

Jesli chodzi o pliki w SpectreZX to sa normalne pliki muzyczne, lacznie z formatem AY, SpectreZX to w zasadzie ZXTune skompilowany do JavaScript.
Mozesz przeciagnac dowolny plik na ikone komputera (lacznie ze spakowanymi) aby sie przekonac.
A ze lepiej gra (jakosc) to dla mnie oczywiste - nie ma co porownywac emulacji na wspolczesnych kartach dzwiekowych ze starym torem AY.
Wystarczy porownac fizycznego Gravisa z emulacja pod DOSBOX.



Tygrys

  • Administrator
  • *****
  • Wiadomości: 4222
  • Miejsce pobytu:
    Warszawa
  • mistrz ceremonii
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #26 dnia: 2018.01.23, 14:38:36 »
Jak się ma ten projekt? Udało się coś napisać?

silenter

  • *****
  • Wiadomości: 1337
  • Miejsce pobytu:
    Warszawa/Radzymin
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #27 dnia: 2018.01.23, 14:51:39 »
Ja tam trochę pomagałem Abrimaal-owi.
Kod źródłowy który dostałem od niego był napisany bodaj w Delphi 7.0 i powinien chyba dać się skompilować pod lazarusem.
Nie doszedłem do końca bo posiadałem akurat Delphi w którejś tam nastej wersji XE i w miedzy czasie zmieniły się długości typów danych, w związku z czym pointery wskazywały na błędne pozycje w pliku - trochę było pierdzielenia by było z translacją tych typów ale założenia jakie tam były przekazałem i pokazałem jak to mniej więcej ogarnąć w C#.

Z tego co jednak zrozumiałem (kod był słabo okomentowany) to narzędzie rozbierało plik na jakieś segmenty i potrafiło te segmenty na powrót poskładać.
Jeśli można by tu mówić o jakiejkolwiek edycji to możliwości raczej były skromne i sprowadzały się do patchowania segmentów i ewentualne inne ich składanie
128k +2 UK issue 1, JS128, FDD3000 in restoration, ZAXON MGT +D, PEAR AmpY, Pear ExEar :), PEAR TI-OF-TTL+FDD35, co to tu robi??? => 2xCDTV&A500

https://soundcloud.com/silenter

https://www.youtube.com/channel/UCKZhL7Lq1zUDDnRDTJKhN4A

Abrimaal

  • *****
  • Wiadomości: 963
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #28 dnia: 2018.01.23, 23:37:28 »
Niewiele mam ostatnio czasu. Projekt jest w trakcie.

Uruchomiłem Build, z tego wyszło kilkanaście plików, ale żadnego typu .exe
Domyślam się, że najważniejszy jest plik. dll i do niego mam odwoływać się z poziomu aplikacji.

W jaki sposób, czy może być to plik .bat, z którego wywołam ayfile.dll? Jakie parametry?
Dostaję taki komunikat próbując uruchomić go bezpośrednio ayfile.dll



« Ostatnia zmiana: 2018.01.24, 00:50:14 wysłana przez Abrimaal »
AY Music, ULA plus.

Abrimaal

  • *****
  • Wiadomości: 963
  • Miejsce pobytu:
    Lemmingrad
  • Zamulator
    • Games for ULA plus
Odp: Edytor plików .AY dla Windows / PC (jak i w czym napisać?)
« Odpowiedź #29 dnia: 2018.01.24, 05:38:26 »
Ja swego czasu zacząłem pisać util w command line. korzystający z gotowych AYMaker i AYSplitter, ale utknąłem w martwym punkcie.

Chodzi o znak [CR] [LF] czyli nową linię.
AY Splitter tworzy plik .ini który ma być bazą do edycji.
Potrafię pobrać jego zawartość do zmiennej, wyświetlić na ekranie i utworzyć nowy plik ze zmiennej, czyli niby wszystko, co potrzebne do edycji.
Zmienna zawierająca cały plik .ini tworzona jest za pomocą instrukcji TYPE
natomiast druga zmienna, która zawiera pierwszą linię wraz z [CR] [LF] pobierana jest przez SET, inna zmienna zawiera długość tej linii.

I tu zatrzymałem się. Dalej chciałbym, aby program
skrócił zmienną o pierwszą linię (ilość znaków do usunięcia jest znana)
lub
usunął z pliku .ini pierwszą linię wraz ze znakami nowej linii
lub
czytał wartość zmiennej (lub zawartość pliku) od następnego znaku =


« Ostatnia zmiana: 2018.01.24, 05:54:42 wysłana przez Abrimaal »
AY Music, ULA plus.