|
Post by rosy on Nov 27, 2020 15:02:16 GMT -6
1. More audio functions, such as the pitch (frequency) of a sound ... For example as in X11-Basic. Option to set whether the new sound is played immediately or only after the previous one has finished. Support for MIDI sounds. 2. More graphical functions, such as a fill pattern. 3. No need to provide arguments in parentheses 4. Free spelling with or without space in commands such as EndIf, Else if, 5. No need to write "then" after IF. 6. If ... Then ... command - in 1 line without Endif 7. Possibility to specify the variable name after NEXT, as in other dialects 8. I can't get used to square brackets in arrays. 9. Simpler, more convenient methods of creating executable files. Why change the name to MAIN? Could search for the first .cbc file ... The APK generator could remember previous entries and password, or load default values from a file. 10. Ability to place a SUB anywhere. 11. easier text display (including numbers) 12. copying images to a different handle 13. GOTO 14. rotating text 15. Modification of the range of arrays +1 16. Additional device support, e.g. a second mouse. 17. Atan2 function
18. No all arguments required
19. Extended arrays Does rcbasic_32 work on 64-bit systems? I will add if I remember something else ...
|
|
|
Post by johnno56 on Nov 28, 2020 5:30:26 GMT -6
I like the idea of a "Tone Generator" eg: sound 200, 5 (tone and length) and a Pattern Fill. A lot of the old 8 bit machines had a 'sound chip' and was accessed via a play or sound command. Accessing a chip was more efficient than using valuable memory to store a tome generator routine... Both ZX Spectrum and Amstrad CPC464 used the AY-3-8912 sound chip. Simple and 'shaped' sounds could be produced from a simple command. As RC does not have the ability to produce 'tones', I seriously doubt that, producing a function or library to make sounds, will probably not work. There are independent applications that will create and or save the old style sounds. eg: www.bfxr.net/ This can be used on or offline. In regards to a pattern fill... On my old Amstrad, a pattern fill routine was written, but it was dog slow... I will try to find the listing and see if it can be modified... I have a sneaking suspicion that it may have been a partial machine code program... Anyway... N00b should be able to give you the reasons why or why not for the sound and fill... Time for another coffee...
|
|
|
Post by n00b on Nov 28, 2020 14:45:54 GMT -6
I can look into adding some of these but a lot of these are probably not going to happen. I will look into adding more audio functions. Currently the audio functions are all the SDL_Mixer library provides. There is some capability to add additional effects through SDL_Mixer which I can hopefully extend to RCBasic in the future. I am not sure what you mean by a fill pattern function but you could probably code this routine yourself. johnno56 if you have an example of this would you mind posting it? The request to be able to use both "ElseIf" as one word as well as "Else If" as 2 words might be doable but probably won't happen anytime soon. The same thing with NEXT. If you want to have that variable name there for your own reference you can just put it in a comment on that line like so: NEXT 'I As for the square brackets, I like having the square brackets for arrays because it makes it easy to distinguish between arrays and functions.
|
|
|
Post by johnno56 on Nov 28, 2020 16:05:00 GMT -6
I located one of the OLD Amstrad pattern fill routines... That one used machine code, as such, did not lend itself to conversion. I will try to find the 'non-m/c' routine... if I can remember which Amstrad magazine in which it was listed... lol
I will try to look today (Sunday) but could be difficult. Now that our covid restrictions have been eased somewhat, we can now have visitors (within numbers), which means an invasion by our grandkids. So much for coding... lol
|
|
|
Post by tbird on Dec 4, 2020 13:58:27 GMT -6
Google will be your guide! Lots of fill routines out there.
|
|
|
Post by kennn on Dec 26, 2020 1:18:40 GMT -6
Actually, the above idea is not bad. (I can imagine that RCBasic's syntax will look more flawless in the future, Sure!)
|
|
|
Post by aurel on Dec 26, 2020 6:15:51 GMT -6
-
|
|
|
Post by Tomaaz on Dec 26, 2020 7:08:52 GMT -6
aurel, what about FreeBASIC, QB64, YaBasic, X-11 Basic...? You are happy to share your expert opinion about these dialects, so how is it possible that you don't know their basic syntax?
|
|
|
Post by kennn on Dec 27, 2020 17:20:05 GMT -6
aurel, what about FreeBASIC, QB64, YaBasic, X-11 Basic...? You are happy to share your expert opinion about these dialects, so how is it possible that you don't know their basic syntax? Ha, thanks for your good opinions. Maybe Aurel is fond of making a joke.
|
|
|
Post by rosy on Mar 15, 2021 10:08:00 GMT -6
Coming back to the audio functions ... They could be at least the basic function of playing MIDI sounds. It probably shouldn't be difficult ... Or maybe someone knows how to do it without specialized commands?
|
|
|
Post by rosy on Mar 16, 2021 4:38:43 GMT -6
The basic possibility is also missing that the next sound is only played after the previous one has finished.
|
|
|
Post by n00b on Mar 16, 2021 12:15:24 GMT -6
The basic possibility is also missing that the next sound is only played after the previous one has finished. There is a function called ChannelIsPlaying() that will tell you if a sound is playing and you can play a new sound when that is done. If that isn't working properly I will look at it.
|
|
|
Post by rosy on Mar 16, 2021 14:43:56 GMT -6
This requires special checks. That's not what I meant. It's about setting a playback parameter that would check it in the background and automatically play the next sound.
|
|
|
Post by rosy on Apr 14, 2021 5:37:59 GMT -6
Can he do it? Because I do not know whether to bother or wait for a new release with this function ...
|
|
|
Post by rosy on Apr 25, 2021 11:02:21 GMT -6
I added another wishes ...
Proposes that the DIM array [n] behave like the current DIM array [n + 1]. DIM works differently with the different Basic variants. This causes compatibility issues when programs are ported or when someone uses different variations. Assume that DIM a [n] reserves n cells for it (instead of 0 to n-1) will solve many problems, as is the case with GFA-Basic32 for example.
Another request is for the support of additional devices, in particular a second mouse, which is necessary in mouse-supported multiplayer games. This is handled by the DirectInput method in Windows, but probably also in SDL.
|
|