Wonkey Update

Started by iWasAdam, May 23, 2021, 12:26:29

Previous topic - Next topic

round157

Quote from: Baggey on October 12, 2021, 19:31:57
I havent read all the threads but where can i try Wonkey!?



Hi...the main software developer(iWasAdam) can tell you the information of Wonkey but this developer may not come to the forum daily.

Baggey

#106
Quote from: iWasAdam on June 09, 2021, 08:30:41
Here's a question to any interested persons - or not interested.

What would YOU like from an IDE?

Ive been writing Emmulation core's in Z80, 6502, 6510. Im finding sometimes id like to replace a variable or rename a function! But cuz it's in say maybe a 1000 lines of code it's a bugger to alter!

Id like to see a Find "certain text" and Replace with another "Certain txt" Function, at the click of a button :D

Ive written a program todo it anyway's. But it would be nice built in.  8)

Id also like to be able to alter all colors and save them as a theme ie, "My own Dark Theme" and be able to alter Icons also.

Id also like access to High resoloution timmers ie, milli(), micro() and nano :-[. It would be nice to use them to define events ie, to mimic Interupts.

Looking forward to something a little different especially having greater access to sound files and altering them on the fly!

Baggey
Running a PC that just Aint fast enough!? i7 Quad core 16GB ram 1TB SSD and NVIDIA Quadro K620 . DID Technology stop! Or have we been assimulated!

ZX Spectrum 48k, C64, ORIC Atmos 48K, Enterprise 128K, The SID chip. Im Misunderstood!

zelda64bit

When is a new update?. I still can't use it in window 7.

round157

Wonkey looks popular. Good! :)

iWasAdam

thanks - it's coming along... although the other devs have been very quiet of late.

So what has been happening?
I busy working my way through sokol - why sokol I hear you ask?
Simple answer is Apple METAL! - The only way to future proof things is to have a metal core.

My other focus is to dump virtually all modules apart from the very base std, wonkey. SDL2 is being kept around as It is the only way to directly access audio and joystick stuff (unfortunately that adds 1.3bm. but maybe I can go on a pruning task later?)

Dumping all other modules means we are looking at lean and mean. it also means completely loosing mojo, mojo3d, (the unholy) mojx, opena, opengl, (the abomniation) tinyxml and litehtml

The modules haven't gone anywhere. they are just not being used for the new sokol stuff \o/

And... To Be Completely Honest - it's a total joy to work with. just the language, the core graphics and sound and no overheads. compile time for projects is around 1sec!

An example of this is accessing joysticks - which was always a pain in blitz/monkey2. The core is handled by sdl2 (similar to monkey2), but the new class I built to handle it - simples \o/


Namespace joystickCore
Using joystickCore

#Import "<sdl2>"
Using sdl2..



Enum Hat
Centered = 0
Up = 1
Right = 2
Down = 4
Left = 8
RightUp = Right | Up
RightDown = Right | Down
LeftUp = Left | Up
LeftDown = Left | Down
End


class SDLJoystick
Field _stick:SDL_Joystick Ptr[] = New SDL_Joystick Ptr[4]

field Active:bool[] = New bool[4]

field Count:int = 0


method New()
SDL_Init( SDL_INIT_JOYSTICK )
SDL_JoystickEventState( SDL_DISABLE )

Count = SDL_NumJoysticks() + 1

local id:int
For id = 0 Until Count
_stick[id] = SDL_JoystickOpen( id )
Active[id] = _stick[id] <> Null
Next
End method


method GUID:String( stick:int )
If stick < 0 Or stick > 3 Then Return "-"
If Not Active[stick] Then Return "-"

Local buf:byte[] = New Byte[64]
Local guid := SDL_JoystickGetGUID( _stick[stick] )
SDL_JoystickGetGUIDString( guid, Cast<libc.char_t Ptr>( buf.Data ), buf.Length )
buf[buf.Length-1] = 0
Return String.FromCString( buf.Data )
End method


method Name:string( stick:int )
If stick < 0 Or stick > 3 Then Return "-"
If Not Active[stick] Then Return "n/a"

Return SDL_JoystickName( _stick[stick] )
End method


method Update()
SDL_JoystickUpdate()
End method


method GetButton:bool( stick:int, button:int )
If stick < 0 Or stick > 3 Then Return False
If Not Active[stick] Then Return False

Return SDL_JoystickGetButton( _stick[stick], button )
End method


method GetAxis:int( stick:int, axis:int )
If stick < 0 Or stick > 3 Then Return 0
If Not Active[stick] Then Return 0

Return SDL_JoystickGetAxis( _stick[stick], axis )
End


Method GetBall:Vec2i( stick:int, ball:Int )
local ret:Vec2i = New Vec2i( 0, 0 )

If stick < 0 Or stick > 3 Then Return ret
If Not Active[stick] Then Return ret

SDL_JoystickGetBall( _stick[stick], ball, Varptr ret.x, Varptr ret.y )

Return ret
End


Method GetHat:Hat( stick:int, hat:Int )
If stick < 0 Or stick > 3 Then Return Hat.Centered
If Not Active[stick] Then Return Hat.Centered

Return Cast<Hat>( SDL_JoystickGetHat( _stick[stick], hat ) )
End

End class


feel free to nick this is you want ;)

zelda64bit

I would like to try sokol when the version for window 7 comes out. Will Sokol have software or metal-only support?

round157


iWasAdam

QuoteWill Sokol have software or metal-only support
Apple is metal - other platforms are OpenGL 3 ;)
- if I was to really get technical, my core thought would be to have a single shader language and translate to the other - luckily I have so far hidden them away so you don't need to think about them ;)

I am taking a bit of general time off with sokol so I can get a brand new audio core operational. There were some technical issues which had prooved nasty, but talking it over with other musicians/users they are very happy with the results. So things are moving forward but slowly as I write a brand new version of QasarBeach from the ground up. But using all the new tricks I picked up along the way. I think it will be end of the year when we see real results there - it's just a mess of audio at the moment. hehehe.

But it is coming along with metal/gl graphics with much smaller memory and system resources being used. See below:


It might look primitive - but it's not ;) It's what the users want and also what I want. It's also a great way to make all the UI bits completely bomb proof too...


Baggey

#113
Quote from: zelda64bit on November 23, 2021, 16:57:37
I would like to try sokol when the version for window 7 comes out. Will Sokol have software or metal-only support?

Hopefully it's an .EXE install like BlitzmaxNG. and we just use the program  ::)

Baggey

AND! I AM REPEATINGMY SELF I THINK!  :-X
Running a PC that just Aint fast enough!? i7 Quad core 16GB ram 1TB SSD and NVIDIA Quadro K620 . DID Technology stop! Or have we been assimulated!

ZX Spectrum 48k, C64, ORIC Atmos 48K, Enterprise 128K, The SID chip. Im Misunderstood!

zelda64bit

Quote from: Baggey on November 26, 2021, 18:39:19

Hopefully it's an .EXE install like BlitzmaxNG. and we just use the program  ::)

Baggey

AND! I AM REPEATINGMY SELF I THINK!  :-X

zelda64bit

Quote from: zelda64bit on November 27, 2021, 14:34:40
Quote from: Baggey on November 26, 2021, 18:39:19

Hopefully it's an .EXE install like BlitzmaxNG. and we just use the program  ::)

Baggey

AND! I AM REPEATINGMY SELF I THINK!  :-X

I don't understand your message, you can explain yourself better. Maybe it's google translate's fault.

round157

Quote from: zelda64bit on November 23, 2021, 16:57:37
I would like to try sokol when the version for window 7 comes out.

Oh, the version for Windows 7. Microsoft doesn't support Windows 7 any more and therefore I believe that...........

Baggey

#117
Quote from: zelda64bit on November 27, 2021, 14:36:06
Quote from: zelda64bit on November 27, 2021, 14:34:40
Quote from: Baggey on November 26, 2021, 18:39:19

Hopefully it's an .EXE install like BlitzmaxNG. and we just use the program  ::)

Baggey

AND! I AM REPEATINGMY SELF I THINK!  :-X

I don't understand your message, you can explain yourself better. Maybe it's google translate's fault.

Hi, What i mean is you run one .EXE or setup file. You then use it just like BlitzmzxNG. Not Install it and need to do other things and find other programs to go with it. I like things nice and simple  :)
Running a PC that just Aint fast enough!? i7 Quad core 16GB ram 1TB SSD and NVIDIA Quadro K620 . DID Technology stop! Or have we been assimulated!

ZX Spectrum 48k, C64, ORIC Atmos 48K, Enterprise 128K, The SID chip. Im Misunderstood!