My FireJam program for the #F256K2, I drive it with a MIDI keyboard and target various sound chips. I found a quick method to bring YMF262 OPL3 instrument definitions of tunes I found in adlib tracker. Big learning curve but this feels like a W
https://youtu.be/rQRmOsdoABI
#yamaha #retrocoding
It's alive! After a few years of battling with the #RISC_OS #kernel ... something new and magic is coming up very soon and oh boy if it's exciting!
#riscos is alive and well, worries not!
#retrocomputing , #retrocoding , #programming #operating_system #opensource
#RISC_OS New updates for both the 2 RO AIs, lots of improvements for both! Thanks a lot to all the people helping with this project! It's great to see the community coming together
Details on ROOL's forum:
RO: https://www.riscosopen.org/forum/forums/1/topics/19572#posts-155241
BBC BASIC: https://www.riscosopen.org/forum/forums/1/topics/19699#posts-155242
#AI for #Retrocomputing and #Retrocoding #programming #riscos #ARM #AcornComputers #LLM
It's been 40 years I waited for this, but I can finally say, using UltimaVM on top of RO makes #RISC_OS actually modern! None of these naugthy tests even makes RISC OS blink an eye (and with UltimaVM task Scheduler not even freeze the desktop while running)!
... spent half the weekend trying to find out why I wasn't able to play a musical scale on the #ay89xx despite having all the formulae for caluclating the tone period implemented correct. some notes were played correctly , others sounded like a fart ...
turns out that I did 8 bit masking when I should have done 16 bit masking for the 12 bit of the coarse tune/fine tune registers ... *doh* ...
About #COMAL for #Amiga ...
---
I can't understand how it is possible that I missed this language so advanced for the time.
I'm rewriting the manual to share it in HTML format (and also to understand this language in more depth), and from what I see it seems incredible for those times...
How is it possible that it has been almost forgotten? Or maybe it's just me who has never met this language on my path.
I'm getting the urge to use it for something
Exploring the 2024 Logiker Coding Challenge With GRay Defender
#c64 #commodore64 #c64basic #Logiker #VintageComputing #ChristmasChallenge #RetroCoding #Programming #HolidayProject #RetroComputing #CreativeCoding #CBMProgramStudio
https://theoasisbbs.com/exploring-the-2024-logiker-coding-challenge-with-gray-defender/?feed_id=958&_unique_id=67769fe50fd7f
Update on #dxbbs which now allows the user to enter multiple lines of text until enter is pressed on an empty line.
The text is stored in a temporary ASCII file, line by line. This will later allow for additional line editing before saving - at least that is what I plan to do.
The final message is appened to the message base file and a new index record is written as can be seen in the screenshots.
For those of you who are interested in my latest project, #dxbbs you may like to know that I've done some code cleanup, renamed existing variables and introduced new ones, especially for the message base files. this is in preparation of handling multiple message bases.
I've also implemented "message flagging/unflagging" in combination with the msg_purge routine. The latter takes some time to process all messages since it actually creates a re-indexd copy of all files for the selected message base.
So I thought it would make sense to "flag" messages for deletion, effectively excluding these from being listed or read and then have the option to physically delete them and re-arrange the message file during a maintenance window, where there is enough planned downtime for such an action.
Let me note that the code is by no means an example for proper #forth programming. I'm not there yet, but in case you are interested, here's the link:
https://gitlab.com/ufud-org/rc2014-dxforth/-/tree/main/bbs?ref_type=heads
if you are interested in the various drivers and programs I've so far written in #DXForth for the #rc2014 computer running the CP/M #cpm operating system, I'd like to remind you of the code repo I've put up recently. Documentation is rare, to say the least. But all the code is there:
... another update on the progress with DX BBS. Today, I've updated the input routine so that it is now capable of:
1.) input length limitation ( it is not possible to enter more than 'n' characters, halting cursor movement at 'n')
and
2.) a basic mechanism of "hiding" the input instead of echoing it
these two features are implemented in one #Forth word which ( in the example screenshot ) is being called like this:
#16 #1 bbs_input | Stack: ( ulen uhide -- )
so you can enter a max of 16 chars and these will be "hidden". It's a more basic routine similar to "instr()" in #RBBS4. I use the return stack to store the length and hide-flag which works since the loops in the word definition are *not* counted (do..loop). Boy do I feel clever ... heh ...
A quick update on the ominous "DX BBS" (I think the name is beginning to sink in) project of mine: yet another milestone!!
No fancy video or screenshot this time but rest assured that I now have a 'copy_msg' function which will copy any random message from the message base to a new set of message and index files.
This means that I can now cherry-pick a selection of messages to be copied or exclude a single message from the rest of the records to be copied. Best thing: re-indexing the (new) message index comes for free ...
Looks like my initial design for the message base system pays off - yaaaay!
I need to do some more testing but things look good at the moment.
Work is slowly progressing on the core code of what I still call "DX BBS" until I find more suitable name for it.
Today I've added a session timeout counter that will disconnect after approx. five minutes of inactivity. No RTC required, which is nice (I have plans to write a driver for the DS1302 RTC module for RC2014 sometime in the future, but this is not a priority right now).
Message posting, listing and reading works on a POC level but needs further refinement.
Especially deleting messages and re-writing the corresponding data files is the next milestone I set for myself.
*If* the message base system turns out the way I imagine, there's a good chance the final program will be able to serve whatever line width your client can handle (32, 40, 80 ... columns) - wouldn't that be nice?
I found it in an old MSX magazine and coded it by hand on an MSX2 emulator running on Linux. Really hard to play but very well made given the amount of memory it requires to run (less then 32kb I think)
Milestone!
Now the core code for writing, indexing and reading messages works. It needs a lot of fine tuning, but the screenshot below is proof that my concept for the message base file is working.
#RetroCoding
#RetroProgramming
#BBS
#rc2014
#DXForth
#Forth
#CPM
@anon_opin try #dudebuildingaspeccy or #dudebuildingac64 for true some retro love beyond arcades and checkout the #retrocoding tag ...