Posts

Showing posts from April, 2023

GNU Emacs as a lightweight IDE - Assembly

Image
CEDET support for Assembly language Auto-completion using company and speedbar outline view Jump to label Jump to include file Auto-completion using company Speedbar outline view     ASM file extensions supported - .s, .S and .asm   Grammar file: https://gitlab.com/atamariya/emacs/-/blob/dev/admin/grammars/asm.wy

Molly Kernel

Image
Molly kernel is a bare kernel (32kB size) for x86 based on JamesM's kernel development tutorials for learning purpose. It also adds keyboard support from Bran's kernel development tutorials .   Build The original version of the code is in master branch . The modifications (bug fixes + enhancements) are in dev branch .   ;; Pre-requisites sudo apt install nasm gcc make kvm bochs   git clone https://gitlab.com/atamariya/molly.git make -C src ./update_image.sh ./run.sh     ;; Optional ;; Run floppy image kvm -fda floppy.img     ;; Run kernel binary kvm -kernel src/kernel -initrd initrd.img     Debugging You can use GDB to debug the kernel while executing it under qemu. Start qemu with "-s -S" flags and attach GDB remote session using "target remote localhost:1234". Make sure you match the architecture (i386 in this case) for qemu command and the kernel.   qemu-system- i386 -kernel src/kernel -initrd initrd.img -s -S     References Debugging 16-bit in QEMU