Важная информация
RSS лента

Dr.Potapov

OS/M, первые загрузки приложений

Оценить эту запись
Сегодня ночью первый раз начал запускать приложения в своем pet-project ))

Нажмите на изображение для увеличения. 

Название:	2018-03-10_16-49-01.png 
Просмотров:	460 
Размер:	10.9 Кб 
ID:	64559

Одно из приложений выглядит так:
Код:
	org #8000

	ld (syscall+1),hl	;установить адрес системного вызова

	ld a,#0			;#00 - запросить указатель на системную функцию 
	ld hl,sc		;с именем ("sc") на которое указывает HL
	call syscall		;получить указатель на системную функцию
	ld (console+1),hl	;установить адрес вызова системной функции "sc"

	ld a,#02                ;#02 - печать строки
	ld hl,helloworld	;указатель на строку в HL
	call console            ;вызов системной функции "sc" (System Console)
	
	ret

helloworld	db "Hello World!",#0d

;-- таблица имен необходимых функций
sc	db 3,"sc"

;-- таблица вызовов системных функций	
syscall		db #c3,0,0
console		db #c3,0,0
Вызов (сильно вкратце) выглядит так:
1. sh (такая же внешняя программа как и hello) вызывает функцию exec
2. функция exec вызывает виртуальную файловую систему (fs), которая встретив в системной MountTable (создается из fstab при загрузке или патчится программой mount/umount в процессе) запись "fd0 / trd" обращается к драйверу-описателю tr-dos формата, так как CurrentPath="/" (я пока без каталогов всяких)
4. а драйвер tr-dos в свою очередь обращается к аппаратно-зависимому драйверу "fd" дисковода по своим правилам (согласно формату диска)

Чот прям рад, действительно )

Обновлено 10.03.2018 в 20:41 Dr.Potapov

Метки: Нет Добавить / редактировать метки
Категории
OS/M

Комментарии

  1. Аватар для Dimon spb
    Да, прикольно. Я когда-то, как многие, болел темой оконных интерфейсов. По примерно такому же принципу начал писать графический интерфейс, со своим форматом описания окон, кнопок и т.д. Недалеко ушел, но пока писал, многому научился )
  2. Аватар для Dr.Potapov
    Цитата Сообщение от Dimon spb
    Да, прикольно. Я когда-то, как многие, болел темой оконных интерфейсов. По примерно такому же принципу начал писать графический интерфейс, со своим форматом описания окон, кнопок и т.д. Недалеко ушел, но пока писал, многому научился )
    Спасибо )

    Да я пока тоже не так далеко как хотелось бы. Да еще разболелся, столько идей а башка не варит совсем ))

Трекбэков