Tracking programming - File Management

Anything QL Software or Programming Related.
spkr
Bent Pin Expansion Port
Posts: 98
Joined: Tue May 04, 2021 6:52 pm

Tracking programming - File Management

Post by spkr »

Hi there guys,

I would like to code out a (Music) Tracker for the QL. So Ill make a program that allows the user to define instruments by settings its parameters in the Tracker, and then subsequently arrange these instruments in a sequence that can be played back. The end result would be something that can be played back in another program (Demo, anyone :)).

In order to be most useful, I would like to implement loading instruments/patterns/songs and saving them. But so far Ive only worked on single-file programs, that are loaded and run from basic, and then executed; rather than touching filemanagement at all.

The goal Im trying to achieve here is to support (creating/)saving and loading files to/from (micro)disk.

To do this, I have several questions;
- generic: is there anyone that cna point me towards resources as to how to do this from Assembly?

and more detailed:
- can create/loading/saving Basic/OS functions be called from ASM?
- can this be done while in supervisor mode?
- can this be done while having interrupts disabled?

Hopefully someone is able to provide me some pointers!
Thanks!
Wietze


User avatar
ppe
Trump Card
Posts: 171
Joined: Tue Dec 14, 2010 10:48 am
Location: Espoo, Finland

Re: Tracking programming - File Management

Post by ppe »

spkr wrote:Hi there guys,
- generic: is there anyone that cna point me towards resources as to how to do this from Assembly?
Norman's Wiki pages have a ton of useful examples, e.g. http://qdosmsq.dunbar-it.co.uk/doku.php ... rap_2:open

His assembly language book is excellent:
https://github.com/NormanDunbar/QLAssemblyLanguageBook

Hope this helps,
Petri


User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: Tracking programming - File Management

Post by NormanDunbar »

Petri wrote:Norman's Wiki pages have a ton of useful examples, e.g. http://qdosmsq.dunbar-it.co.uk/doku.php ... rap_2:open

His assembly language book is excellent:
https://github.com/NormanDunbar/QLAssemblyLanguageBook
And if you get stuck, just give a shout out here, someone (or something!) will help.

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
dilwyn
Mr QL
Posts: 2753
Joined: Wed Dec 01, 2010 10:39 pm

Re: Tracking programming - File Management

Post by dilwyn »

NormanDunbar wrote:
Petri wrote:Norman's Wiki pages have a ton of useful examples, e.g. http://qdosmsq.dunbar-it.co.uk/doku.php ... rap_2:open

His assembly language book is excellent:
https://github.com/NormanDunbar/QLAssemblyLanguageBook
And if you get stuck, just give a shout out here, someone (or something!) will help.

Cheers,
Norm.
Something?!? Is the tame QL Forum bot trained to give assembly tutorials? :o :D


User avatar
NormanDunbar
Forum Moderator
Posts: 2251
Joined: Tue Dec 14, 2010 9:04 am
Location: Leeds, West Yorkshire, UK
Contact:

Re: Tracking programming - File Management

Post by NormanDunbar »

I might be!


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
spkr
Bent Pin Expansion Port
Posts: 98
Joined: Tue May 04, 2021 6:52 pm

Re: Tracking programming - File Management

Post by spkr »

here a preview of the tracker, currently load and save stuff still need to be implemented

http://frummel.org/~weedz/atari/examples/fuql_v05.zip

- known bug(s), on real hardware, at certain startups the screen stays black


Derek_Stewart
Font of All Knowledge
Posts: 3928
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Tracking programming - File Management

Post by Derek_Stewart »

spkr wrote:here a preview of the tracker, currently load and save stuff still need to be implemented

http://frummel.org/~weedz/atari/examples/fuql_v05.zip

- known bug(s), on real hardware, at certain startups the screen stays black
Hi,

I tried this on Qemulator with Minerva v1.98, works great.

Are you looking to enhance the programme?


Regards,

Derek
User avatar
RalfR
Aurora
Posts: 870
Joined: Fri Jun 15, 2018 8:58 pm

Re: Tracking programming - File Management

Post by RalfR »

Must it be a "CALL" program? No chances to make it as a Job to EX?


4E75 7000
spkr
Bent Pin Expansion Port
Posts: 98
Joined: Tue May 04, 2021 6:52 pm

Re: Tracking programming - File Management

Post by spkr »

Derek_Stewart wrote:
spkr wrote:here a preview of the tracker, currently load and save stuff still need to be implemented

http://frummel.org/~weedz/atari/examples/fuql_v05.zip

- known bug(s), on real hardware, at certain startups the screen stays black
Hi,

I tried this on Qemulator with Minerva v1.98, works great.

Are you looking to enhance the programme?
Well, it requires some more work; yes :)


spkr
Bent Pin Expansion Port
Posts: 98
Joined: Tue May 04, 2021 6:52 pm

Re: Tracking programming - File Management

Post by spkr »

RalfR wrote:Must it be a "CALL" program? No chances to make it as a Job to EX?
I use supervisor and shut down all interrupts. So I guess the answer is yes it should be, no it wont be made to run as a job.


Post Reply