#assembler — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #assembler, aggregated by home.social.
-
Написание ядра ОС с нуля. Часть 1
Когда я только знакомился с OSDev, я очень долго искал соответствующие материалы. Находил и на YouTube, и на Habr, и просто какие‑то англоязычные сайты (тогда я не сильно знал английский). Но почти все что я находил было либо незаконченным, либо недостаточно понятным и полным. В этой статье я постараюсь рассказать все так, как ожидал я это от других.
-
Нельзя просто взять и прочитать 64-битный SysTick на CH32V203
Когда я начал работать с CH32V203G6U6 и обнаружил, что там есть 64-битный аппаратный таймер, то подумал: ух, это же отлично, раз таймер аппаратный, то и о чтении/записи заботится сам микроконтроллер. И какое-то время это не вызывало вопросов. А потом…
https://habr.com/ru/articles/1068444/
#wch #embedded #c_language #assembler #riscv #debug #systick
-
@aud Assembler for (a) speed and (b) gatekeeping. Not Prolog and definitely not APL because APL is simply insane. Possibly with a side project purporting to write it in Lisp just to draw in all the posers and weirdos and those who weirdly pose as weirdos.
#assembler #prolog #apl #lisp -
An interesting approach to assembler operation and control: I65 is a suite of cross assemblers with syntax embdedded in the Lua language.
-
An interesting approach to assembler operation and control: I65 is a suite of cross assemblers with syntax embdedded in the Lua language.
-
l65 -- lightweight cross #assembler suite for 6502, Z80/SM83 and NEC 7801
#retrogaming #coding #programming #retrocomputing
GitHub - g012/l65: Lightweight... -
l65 -- lightweight cross #assembler suite for 6502, Z80/SM83 and NEC 7801
#retrogaming #coding #programming #retrocomputing
GitHub - g012/l65: Lightweight... -
RE: https://social.heise.de/@ct_Magazin/117072302148680373
wow a single x86 asm instruction that can take up to 23 seconds (or under heavy PCIe load up to 63 seconds).
Wow.
-
RE: https://social.heise.de/@ct_Magazin/117072302148680373
wow a single x86 asm instruction that can take up to 23 seconds (or under heavy PCIe load up to 63 seconds).
Wow.
-
An assembler written in R5RS Scheme for Intel ArchitectureA person called Jonathan Kraut wrote an #assembler called Sassy in #R5RS #Scheme, which is used as the native code generating phase for the Larceny scheme compiler.
#tech #Software #SchemeLang #IA32 #FunctionalProgramming #Compiler
-
An assembler written in R5RS Scheme for Intel ArchitectureA person called Jonathan Kraut wrote an #assembler called Sassy in #R5RS #Scheme, which is used as the native code generating phase for the Larceny scheme compiler.
#tech #Software #SchemeLang #IA32 #FunctionalProgramming #Compiler
-
High Assembler: programming in Assembler - with variables, loops, etc.
Written in Python, High Assembler (“HAS”) aims to combine classic Assembly programming with various concepts familiar from high-level languages. In addition to variables, loops, conditions, and procedures, it also supports, for example, typing and automatic code generation using Python. The output format is classic assembler code in a format compatible with vasm.
-
High Assembler: programming in Assembler - with variables, loops, etc.
Written in Python, High Assembler (“HAS”) aims to combine classic Assembly programming with various concepts familiar from high-level languages. In addition to variables, loops, conditions, and procedures, it also supports, for example, typing and automatic code generation using Python. The output format is classic assembler code in a format compatible with vasm.
-
Деконструкция Go: Runtime или программа, которая запускает вашу программу. Часть 3.1
В предыдущих частях мы разобрались с тем, во что превращается Go-код, как процессор работает с памятью и каким образом реализуются примитивные атомарные операции. Но всё это порождает закономерный вопрос. Если CPU умеет выполнять только машинные инструкции, а операционная система знает лишь о процессах и системных потоках, то кто вообще знает о существовании горутин? Кто увеличивает их стеки? Кто решает, какую из них сейчас выполнять? Кто собирает мусор? Ответ на всё это один - Go runtime. Но runtime - это не какая-то магическая программа, которая находится между нашим приложением и операционной системой. Это часть самого приложения. Давайте разбираться!
https://habr.com/ru/articles/1063194/
#go #assembler #runtime #язык_программирования #go_runtime #go_assembler
-
Learning Low-Level Programming
with the #GBA
#retrogaming #assembler #gbadev #gbdev #gamedev #gameboy #gameboyadvance #programming #coding
Learning Low-Level Programming... -
Learning Low-Level Programming
with the #GBA
#retrogaming #assembler #gbadev #gbdev #gamedev #gameboy #gameboyadvance #programming #coding
Learning Low-Level Programming... -
Написание ядра ОС с нуля. Часть 1
Когда я только знакомился с OSDev, я очень долго искал соответствующие материалы. Находил и на YouTube, и на Habr, и просто какие‑то англоязычные сайты (тогда я не сильно знал английский). Но почти все что я находил было либо незаконченным, либо недостаточно понятным и полным. В этой статье я постараюсь рассказать все так, как ожидал я это от других.
-
Good morning! It's been a few days of work, but happily I think these are very promising results. My assembler is now able to assemble a good part of IA-64 / AMD64 / x86_64 code and run simple programmes calling the Linux kernel directly, no C library involved, which accounts for the performance difference in the first rough benchmark (unsophisticated but directionally right).
This assembler architecture is an extension improving on the zenas Z80 assembler, so it's likely that a future version will fold zenas into the new architecture, and the new unified assembler will target both architectures (initially Z80 and AMD64).
The parts it still can't assemble: legacy i386 modes, fpu x87, SSE, SIMD instructions. It's possible that I may never go through the hassle of implementing i386. The payoff of implementing ARM64 next is much more important I think (that opens a few other modern platforms, including the M1 and Raspberry Pi).
In the coming months, ironing out the assembler wrinkles, completing ELF64, Mach-O, and PE32 output, it starts to look like I might be able to make ual generate native binaries directly, adding a new ual-zenas backend. Probably Linux-only sometime by the end of the year, and the rest sometime in 2027.
#assembler #asm #programming #amd64 #ia64 #ia_64 #z80 #golang #foss
-
Good morning! It's been a few days of work, but happily I think these are very promising results. My assembler is now able to assemble a good part of IA-64 / AMD64 / x86_64 code and run simple programmes calling the Linux kernel directly, no C library involved, which accounts for the performance difference in the first rough benchmark (unsophisticated but directionally right).
This assembler architecture is an extension improving on the zenas Z80 assembler, so it's likely that a future version will fold zenas into the new architecture, and the new unified assembler will target both architectures (initially Z80 and AMD64).
The parts it still can't assemble: legacy i386 modes, fpu x87, SSE, SIMD instructions. It's possible that I may never go through the hassle of implementing i386. The payoff of implementing ARM64 next is much more important I think (that opens a few other modern platforms, including the M1 and Raspberry Pi).
In the coming months, ironing out the assembler wrinkles, completing ELF64, Mach-O, and PE32 output, it starts to look like I might be able to make ual generate native binaries directly, adding a new ual-zenas backend. Probably Linux-only sometime by the end of the year, and the rest sometime in 2027.
#assembler #asm #programming #amd64 #ia64 #ia_64 #z80 #golang #foss
-
@stevekohls The most advanced AND solid Z80 assembler is sjasmplus, of which two branches/generations exist:
the original Aprisobal SjASMPlus (historical, no longer maintained)
the z00m128 SjASMPlus (current, active)
https://github.com/z00m128/sjasmplus
PASMO is another, simpler, but very effective assembler which has more of a traditional vibe.
https://pasmo.speccy.org/#docuAnd if you are feeling venturous, here's my own project, the zenas assembler, which has a number of novel and powerful features:
https://ha1tch.github.io/zsp/projects/zenas/index.htmlHappy coding!
-
@stevekohls The most advanced AND solid Z80 assembler is sjasmplus, of which two branches/generations exist:
the original Aprisobal SjASMPlus (historical, no longer maintained)
the z00m128 SjASMPlus (current, active)
https://github.com/z00m128/sjasmplus
PASMO is another, simpler, but very effective assembler which has more of a traditional vibe.
https://pasmo.speccy.org/#docuAnd if you are feeling venturous, here's my own project, the zenas assembler, which has a number of novel and powerful features:
https://ha1tch.github.io/zsp/projects/zenas/index.htmlHappy coding!
-
My assembler is getting x64 and ARM64 smarts. This is the first time it assembles simple arithmetic, writes an ELF64 binary, and then signs off correctly with the right exit code on linux/amd64.
#asm #assembler #amd64 #x86assembly #x86_64 #assembly #assembly64
-
My assembler is getting x64 and ARM64 smarts. This is the first time it assembles simple arithmetic, writes an ELF64 binary, and then signs off correctly with the right exit code on linux/amd64.
#asm #assembler #amd64 #x86assembly #x86_64 #assembly #assembly64
-
Why it required a compiler-specific language extension (although thankfully all the compilers that matter, ie #gcc and #clang, have converged on the same extension) is beyond me. Being able to detect an overflow is such an obviously useful thing to do that it was implemented in the very first microprocessor, the #Intel4004. I used it heavily in #assembler code on the #Z80 in the 1980s. A mechanism for making use of that flag should have been in the C standard for *decades* by this point. 4/4
-
Why it required a compiler-specific language extension (although thankfully all the compilers that matter, ie #gcc and #clang, have converged on the same extension) is beyond me. Being able to detect an overflow is such an obviously useful thing to do that it was implemented in the very first microprocessor, the #Intel4004. I used it heavily in #assembler code on the #Z80 in the 1980s. A mechanism for making use of that flag should have been in the C standard for *decades* by this point. 4/4
-
Essentially zenas can run and test its own output
https://oldbytes.space/@haitchfive/116869961859865201 -
Essentially zenas can run and test its own output
https://oldbytes.space/@haitchfive/116869961859865201 -
Introducing zenas: a Z80/Z80N macro assembler written in Go, now public at v0.7.5.
The difference: it runs and tests the code it assembles. One static binary — assemble, package to ZX Spectrum tape or snapshot, execute in a built-in emulator, assert on machine state, go-test style.
Encodings verified byte-for-byte against pasmo and sjasmplus across all 545 forms. Typed macro linkage, packages, build tags — with the design reasoning written down.
https://github.com/ha1tch/zenas
#ZXSpectrum #Z80 #retrocomputing #golang #foss #Speccy #Spectrum #ZXSpectrumNext #assembler #asm
-
Introducing zenas: a Z80/Z80N macro assembler written in Go, now public at v0.7.5.
The difference: it runs and tests the code it assembles. One static binary — assemble, package to ZX Spectrum tape or snapshot, execute in a built-in emulator, assert on machine state, go-test style.
Encodings verified byte-for-byte against pasmo and sjasmplus across all 545 forms. Typed macro linkage, packages, build tags — with the design reasoning written down.
https://github.com/ha1tch/zenas
#ZXSpectrum #Z80 #retrocomputing #golang #foss #Speccy #Spectrum #ZXSpectrumNext #assembler #asm
-
Programming Languages I Have Known and Loved (and Hated) https://lowendbox.com/blog/programming-languages-i-have-known-and-loved-and-hated/ #regularexpression #Editorial&News #applescript #javascript #assembler #smalltalk #assembly #algol68 #FORTRAN #haskell #redcode #scratch #erlang #golang #PASCAL #pl/sql #prolog #python #algol #basic #batch #cobol #dbase #elisp #emacs #forth #regex #swift #bash #java #lisp #perl #PL/I #ruby #Rust #ada #apl #awk #csh #JCL #ksh #lua #PHP #rpg #SQL #go #m4 #c #r
-
Programming Languages I Have Known and Loved (and Hated) https://lowendbox.com/blog/programming-languages-i-have-known-and-loved-and-hated/ #regularexpression #Editorial&News #applescript #javascript #assembler #smalltalk #assembly #algol68 #FORTRAN #haskell #redcode #scratch #erlang #golang #PASCAL #pl/sql #prolog #python #algol #basic #batch #cobol #dbase #elisp #emacs #forth #regex #swift #bash #java #lisp #perl #PL/I #ruby #Rust #ada #apl #awk #csh #JCL #ksh #lua #PHP #rpg #SQL #go #m4 #c #r
-
Remoded: разбираем демо-эффекты (часть 2)
И снова приветствую всех любителей олдскула, демосцены и олдскульной демосцены. Это вторая часть разбора DOS-демки "Remoded" и соответственно эффектов, основанных на аппаратных особенностях видеоадаптера VGA. Сегодня мы продолжим разбираться с аппаратным скроллингом, узнаем, что такое "xorfill" и как его правильно готовить, как эмулировать 12 тысяч цветов в 256-цветном режиме, а также познакомимся с другими технологиями прошлого столетия. MOV AX, 13h; INT 10h
https://habr.com/ru/articles/1043888/
#demoscene #олдскул #демосцена #assembler #кодинг #компьютерная_графика #ассемблер #dos
-
16-bit #MSDOS VGA Graphics Library in pure x86 #Assembler old.reddit.com/r/Assembly_l... #retrodev #retrocomputing #programming #coding #dev #graphicsprogramming
From the Assembly_language com... -
16-bit #MSDOS VGA Graphics Library in pure x86 #Assembler old.reddit.com/r/Assembly_l... #retrodev #retrocomputing #programming #coding #dev #graphicsprogramming
From the Assembly_language com... -
Динамический полиморфизм против std::variant с указателями: Разрушаем мифы о скорости std::visit (v.2*)
В экосистеме современного C++ прочно укоренилось мнение: классический динамический полиморфизм через виртуальные функции ( vtable ) и наследование — это устаревший, медленный и недружелюбный к кэшу процессора механизм. В качестве «серебряной пули» модно предлагать связку std::variant и std::visit . Если вы спросите любого виртуального умника (ИИ) он до последнего будет убеждать вас что std::variant и std::visit всегда(!) лучше чем виртуальные функции, даже не сомневайтесь. Проблема в том что с таким отношением вы во многих случаях просто лишаете себя выбора адекватного технического решения. Решения адекватного условиям конкретной задачи с необходимостью диспетчеризации вызовов. По интернету кочуют статьи, утверждающие, что std::visit выполняет диспетчеризацию за фиксированное время O(1) и полностью уничтожает старый добрый ООП-подход, но вы должны понимать что не существует универсальных решений на все случаи жизни. А что если мы попробуем уравнять начальные условия использования обеих техник диспетчеризации и будем использовать вариант с указателями, а не с эмплейс-объектами: std::vector< std::unique_ptr < BaseClass>> и std::vector<std::variant std::unique_ptr< TypeA>, std::unique_ptr< TypeB>, std::unique_ptr< TypeC>>> в условиях раздельной компиляции классов и кода который делает вызовы (зачем это надо?).
https://habr.com/ru/articles/1047930/
#visit #vtable #функции #кэш #динамический_полиморфизм #cplusplus #assembler
-
Забытый мультиколор (часть 4)
Полное руководство по аппаратному мультиколору для тех, кто не знает, что это такое и зачем он нужен. Преимущества и недостатки, прототип игры, перспективы
https://habr.com/ru/articles/1046992/
#zx_spectrum #zx_evolution #timex #multicolor #графика #история_it #демосцена #видеоигры #z80 #assembler
-
Забытый мультиколор (часть 3)
Полное руководство по аппаратному мультиколору для тех, кто не знает, что это такое и зачем он нужен. Совместимость, алгоритмы, эффекты и градиенты
https://habr.com/ru/articles/1043818/
#zx_spectrum #zx_evolution #timex #multicolour #графика #история_it #демосцена #видеоигры #z80 #assembler
-
-
-
Забытый мультиколор (часть 2)
Полное руководство по аппаратному мультиколору для тех, кто не знает, что это такое и зачем он нужен. Создание графики, форматы, вывод на экран
https://habr.com/ru/articles/1041708/
#zx_spectrum #zx_evolution #timex #multicolor #графика #история_it #демосцена #видеоигры #z80 #assembler
-
m68k assembler support: m68kplugin 0.2.3 for JetBrains
In addition to Chris 'platon42' Hodges' MC68000 Assembly Language Plugin for Jetbrains' integrated development environments, Yann Cébron also provides one. Now version 0.2.3 has been released:
-
Zwischen Assembler und Altpapier: Warum nicht die Sprache das Problem der Voyager-Sonden ist - Golem.de
https://www.golem.de/news/zwischen-assembler-und-altpapier-warum-nicht-die-sprache-das-problem-der-voyager-sonden-ist-2605-208807.html #Programmiersprache #Assembler #Fortran #Dokumentation #VoyagerSonden #VoyagerRaumsonden #Voyager1 #Voyager2 -
Convert Amiga assembler code to C
The programmer Reinier van Vliet and the graphic designer @metin together with another partner, formed the Dutch game development group Team Hoi, writing its games in assembler.
Reinier van Vliet has developed a small toolchain that converts 68000 assembler code into portable C. The aim is to achieve CPU semantics that are sufficiently faithful to the originalto port genuine game logic. -
Ghidra-SNES project by JoshLeaves: #Ghidra extension for #SNES #reverseengineering #romhacking (first public release, feedback welcome!) #retrodev #emudev #retrogaming #assembler
Ghidra-SNES: A Ghidra extensio... -
Teil 2 zum AgonLight - Programmieren in 2026 auf einem modernen 8-Bit System in Basic und Assembler. Home Automation in 8-Bit, why not?
https://retrocomputer-dresden.de/agonlight-programmierung/
#agonlight #retrocomputing #dresden #basic #bbcbasic #assembler #esp32
-
Cross-compiler/assembler: Calypsi 5.16 for Windows, Linux and Mac OS
Calypsi is a collection of compilers and assemblers for Windows, Linux and Mac OS, that generatescode for various retro computers. New in version 5.16:
https://www.amiga-news.de/en/news/AN-2026-04-00071-EN.html
#compiler #assembler #Windows #Linux #macOS #calypsi #opensource #MOS6502 #WDC65816 #Motorola68000 #HPNut