Pages

luni, 19 august 2024

News : Blacksmith Master Release Date Announcement Trailer.

News : New Goodnotes 6 Features you NEED to try!

On Sept 1, 2024, we're no longer supporting iOS/iPadOS 15 and macOS 12!
Now, this works on : iOS, Android, Windows, Web.
For windows the price is $6.99 per year, with a 1-week free trial.
... video tutorial from Kayla Le Roux - official youtube channel

duminică, 18 august 2024

sâmbătă, 17 august 2024

News : Creator online tool for assembly with a good design.

This is an online tool for assembly proramming comes with example and a good interface.
CREATOR is a generic teaching simulator to program in assembly in which you can simulate the operation of different architectures on the same tool. This simulator is designed to be used as a tool in which students can put into practice the brews seen in the theoretical classes of the subjects of Architecture and Computer Structure.
You can find this tool on this webpage with examples included RISC-V and MIPS-32.

joi, 15 august 2024

News : Godot 4.3 new released.

With over 3,500 commits authored by over 500 contributors, the latest Godot Engine release comes packed full of new features and
Read more on the official webpage.

Codapi an interactive code playground service.

Interactive code examples for all types of technical writing.
Embed executable code snippets directly into your product documentation, online course or blog post.
Supports 30 playgrounds out of the box, plus custom sandboxes if you need them.
You can run in-browser playgrounds without a server, use the Codapi cloud, or host a sandbox server yourself.
Read more on the official website.

CodePen : Home RoughJS and Wired elements example .

News : Two Point Museum - Announcement Trailer | PS5 Games

luni, 12 august 2024

News : Millennia: Ancient Worlds | Release Trailer

News : FencerDevLog - Godot 4: Screen glitch shader (tutorial) .

... more video tutorials from FencerDevLog - official youtube channel .

FASM : play a wav file with assembly programming language.

... this source code in FASM will play a hexa file using a window with two buttons, see my comments to deal with 'how to do it' ... :
; sound player example , tested with tada.wav from windows os
; convert wav file with
; tomeko.net/online_tools/file_to_hex.php online tool
; to text from tool , then add 'db ' in the front of Sound.inc text file like this:
; db 0x52, 0x49, 0x46, 0x46,
; this : 0x52, 0x49, 0x46, 0x46, is header for RIFF WAV file format

format PE GUI 4.0
entry start

include 'INCLUDE\win32a.inc'

ID_CAPTION         = 101
ID_MESSAGE         = 102
ID_ICONERROR       = 201
ID_ICONINFORMATION = 202
ID_ICONQUESTION    = 203
ID_ICONWARNING     = 204
ID_TOPMOST         = 301

section '.text' code readable executable

  start:

        invoke  GetModuleHandle,0
        invoke  DialogBoxParam,eax,37,HWND_DESKTOP,DialogProc,0
        invoke ExitProcess,0

proc DialogProc hwnddlg,msg,wparam,lparam
        push    ebx esi edi
        cmp     [msg],WM_INITDIALOG
        je      .wminitdialog
        cmp     [msg],WM_COMMAND
        je      .wmcommand
        cmp     [msg],WM_CLOSE
        je      .wmclose
        xor     eax,eax
        jmp     .finish
  .wminitdialog:

        jmp     .processed
  .wmcommand:
        cmp     [wparam],BN_CLICKED shl 16 + IDCANCEL    ; stop
        je      .player_stop

        cmp     [wparam],BN_CLICKED shl 16 + IDOK
        je      .player_play

        jmp     .processed

  .player_stop:
        invoke play, NULL, NULL, NULL     ; stop
        jmp     .processed

  .player_play:
        invoke play, sndFile, NULL, 0x0004 or 0x0001 ; 0x0004 = SND_MEMORY + ASYNC = 0x0001
        jmp     .processed

  .wmclose:
        invoke  EndDialog,[hwnddlg],0

  .processed:
        mov     eax,1
  .finish:
        pop     edi esi ebx
        ret
endp

section '.bss' readable writeable

  sndFile :
           ;db 'Sound.wav',0
  include 'Sound.inc';
section '.idata' import data readable writeable

  library kernel,'KERNEL32.DLL',\
          user,'USER32.DLL',\
          winmm,'winmm.dll'

  import winmm,\
          play, 'PlaySound'

  import kernel,\
         GetModuleHandle,'GetModuleHandleA',\
         ExitProcess,'ExitProcess'

  import user,\
         DialogBoxParam,'DialogBoxParamA',\
         EndDialog,'EndDialog'

section '.rsrc' resource data readable

  directory RT_DIALOG,dialogs

  resource dialogs,\
           37,LANG_ENGLISH+SUBLANG_DEFAULT,demonstration

  dialog demonstration,'SoundPlayer / _ (typedef)',70,76,110,30,WS_CAPTION+WS_POPUP+WS_SYSMENU+DS_MODALFRAME
    dialogitem 'BUTTON','Play',IDOK,10,10,45,15,WS_VISIBLE
    dialogitem 'BUTTON','Stop',IDCANCEL,54,10,45,15,WS_VISIBLE
  enddialog