Помогите новичку

Applications development, KoOS API questions
  • И правильно делают - не надо их создавать, обычно они уже есть и это выход на предыдущий уровень пути.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4, я согласен, что это должен быть выход на предыдущий уровень.
    Вот я зашёл на раздел XFS:
    Spoiler:
    11111.PNG
    11111.PNG (22.03 KiB)
    Viewed 4758 times
    UPD:

    А вот Shell вылетела, хотя папка ".." там была:
    Spoiler:
    11111.PNG
    11111.PNG (35.4 KiB)
    Viewed 4751 times
  • 0CodErr wrote: Вот я зашёл на раздел XFS:
    Spoiler:
    11111.PNG
    Насчет XFS может быть и багом драйвера - все же новый неоттестированный полностью код.
    0CodErr wrote: А вот Shell вылетела, хотя папка ".." там была:
    Spoiler:
    11111.PNG
    А вот тут было бы неплохо подробно описать весь процесс пошагово, а то я плохо понимаю при каких условиях получается.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4 wrote:А вот тут было бы неплохо подробно описать весь процесс пошагово
    Ну я просто запустил Shell, написал там как на скриншоте "cd /rd/1/3d/.." и нажал Enter. Это было в VirtualBox.
    А вот в Qemu, кажется, оно зависло:
    Spoiler:
    Q.PNG
    Q.PNG (22.03 KiB)
    Viewed 4742 times
  • Что-то мне поведение Shell при работе с ФС после вчерашней правки не нравится...

    0CodErr
    Можешь проделать описанные тобой действия в Shell 0.6.2?
  • Проверил Shell 0.6.2 вместе с svn3921-img в VirtualBox:
    Spoiler:
    SH.PNG
    SH.PNG (41.87 KiB)
    Viewed 4734 times
  • 0CodErr
    Спасибо!
  • 0CodErr wrote:Проверил Shell 0.6.2 вместе с svn3921-img в VirtualBox:
    Spoiler:
    SH.PNG
    какова причина ошибки на скрине?
    to infinity and beyond
  • Тут на картинке показано, как при перемещении окна Calc, не выходящего за пределы окна KPack, также перерисовывается Debugger, окно которого находится ниже окна KPack:
    Spoiler:
    1.gif
    1.gif (106.36 KiB)
    Viewed 4689 times
    Подобное происходит и с другими приложениями. Так ведь не должно быть?
  • 0CodErr wrote:Подобное происходит и с другими приложениями. Так ведь не должно быть?
    Да, ты прав и нужно выяснить с какой ревизии это произошло.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • 0CodErr
    Хотя я ошибся - это всегда так было. Алгоритм пересчета тупо заставляет перерисовываться все окна поверх которых произошло изменение. Не самый лучший вариант разумеется. На приложениях где вывод организован более рационально (к примеру, KFAR) этот эффект не заметен визуально, хотя окно перерисовывается так же как и у других приложений.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • 0CodErr wrote:Тут на картинке показано, как при перемещении окна Calc, не выходящего за пределы окна KPack, также перерисовывается Debugger, окно которого находится ниже окна KPack:
    Spoiler:
    1.gif
    Подобное происходит и с другими приложениями. Так ведь не должно быть?
    Исправлено в SVN r. 3936.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • 0CodErr wrote:Mario_r4, я согласен, что это должен быть выход на предыдущий уровень.
    Вот я зашёл на раздел XFS:
    Spoiler:
    11111.PNG
    Вот я зашёл на раздел XFS в линуксе:

    Code: Select all

    [dunkaist@ddesk ~]$ cd /
    [dunkaist@ddesk /]$ ls
    bin  boot  dev	etc  home  lib	lib64  mnt  opt  proc  root  run  sbin	srv  sys  tmp  usr  var
    [dunkaist@ddesk /]$ cd ..
    [dunkaist@ddesk /]$ ls
    bin  boot  dev	etc  home  lib	lib64  mnt  opt  proc  root  run  sbin	srv  sys  tmp  usr  var
    [dunkaist@ddesk /]$ cd ../../../../../././././././../../..
    [dunkaist@ddesk /]$ ls
    bin  boot  dev	etc  home  lib	lib64  mnt  opt  proc  root  run  sbin	srv  sys  tmp  usr  var
    Т.е. по факту поддиректории '.' и '..' есть в каждой директории, включая корневую. Только в корневой '..' указывает на себя.
    В колибри '..' и '.' в корне не разрешены, как ты цитировал документацию в теме XFS. Это не самая страшная проблема с XFS на сегодня, но я буду иметь в виду.

    На мой взгляд, запрет как минимум '.' директории в корне излишен. Корень ведь существует. Но пока есть хоть какая-то документация, буду стараться ей следовать.
  • Запустил сейчас снова тот свой код viewtopic.php?p=44424#p44424
    Но теперь вместо «файл не найден» возвращается «успешно».
    Ради интереса попробовал ещё другие пути(со слэшами и без) — тоже всегда «успешно».
    Вот изменённый исходник:
    Spoiler:

    Code: Select all

    ORG 0
    BITS 32
    ; ---------------------------------------------------------------------------- ;
    STACK_SIZE         equ 256
    ; ---------------------------------------------------------------------------- ;
    MENUET01           db 'MENUET01'
    version            dd 1
    program.start      dd start_
    program.end        dd end_
    program.memory     dd end_ + STACK_SIZE
    program.stack      dd end_ + STACK_SIZE
    program.params     dd 0
    program.path       dd 0
    ; ---------------------------------------------------------------------------- ;
    start_:
            call   on_redraw
    wait.event:
            mov    eax, 10
            int    64
            cmp    eax, 1
            jne    key?
            call   on_redraw
            jmp    wait.event
    key?:
            cmp    eax, 2
            jne    program.terminate
            ; get.key.code
            ; mov eax, 2
            int    64
            jmp    wait.event
    program.terminate:
            or     eax, -1
            int    64
    on_redraw:
    ; redraw.start
            mov    eax, 12
            mov    ebx, 1
            int    64
    ; draw.window
            xor    eax, eax
            mov    ebx, 444
            mov    ecx, 444
            mov    edx, 33CCDDEEh
            xor    edi, edi
            int    64
    
            mov    edi, (FolderNames.end - FolderNames) / 4
    ; ---------------------------------------------------------------------------- ;
    next:
            mov    eax, [edi * 4 + FolderNames - 4]
            mov    [read.file_info.Folder], eax
    ; read.folder
            mov    eax, 70
            mov    ebx, read.file_info
            int    64
    ; draw.text
            mov    edx, [eax * 4 + errors]
            mov    eax, 4
            lea    ebx, [edi * 4 + edi]
            shl    ebx, 1
            add    ebx, (80 + 10) << 16
            mov    ecx, 90090900h
            int    64
    ; draw.text
            mov    edx, [edi * 4 + FolderNames - 4]
            sub    ebx, 80 << 16
            int    64
    
            dec    edi
            jnz    next
    ; ---------------------------------------------------------------------------- ;
    ; redraw.finish
            mov    eax, 12
            mov    ebx, 2
            int    64
            ret
    ; ---------------------------------------------------------------------------- ;
    read.file_info:
            dd      1
            dd      0
            dd      0
            dd      0
            dd      .buffer
            db      0
    .Folder dd      0
    .buffer resb    32
    ; ---------------------------------------------------------------------------- ;
    FolderNames:
            dd     .0
            dd     .1
            dd     .2
            dd     .3
            dd     .4
            dd     .5
            dd     .6
            dd     .7
            dd     .8
            dd     .9
            dd     .10
            dd     .11
            dd     .12
            dd     .13
            dd     .14
            dd     .15
            dd     .16
            dd     .17
            dd     .18
            dd     .19
            dd     .20
            dd     .21
            dd     .22
            dd     .23
    .end:
    ; ---------------------------------------------------------------------------- ;
    .0      db     "",0
    .1      db     "/",0
    .2      db     "/bd0",0
    .3      db     "/bd0/",0
    .4      db     "/bd0/1",0
    .5      db     "/bd0/1/",0
    .6      db     "/hd0",0
    .7      db     "/hd0/",0
    .8      db     "/hd0/1",0
    .9      db     "/hd0/1/",0
    .10     db     "/cd2",0
    .11     db     "/cd2/",0
    .12     db     "/cd2/1",0
    .13     db     "/cd2/1/",0
    .14     db     "/rd",0
    .15     db     "/rd/",0
    .16     db     "/rd/1",0
    .17     db     "/rd/1/",0
    .18     db     "/tmp1",0
    .19     db     "/tmp1/",0
    .20     db     "/tmp1/1",0
    .21     db     "/tmp1/1/",0
    .22     db     "/sys",0
    .23     db     "/sys/",0
    ; ---------------------------------------------------------------------------- ;
    errors:
            dd     .0
            dd     .1
            dd     .2
            dd     .3
            dd     .4
            dd     .5
            dd     .6
            dd     .7
            dd     .8
            dd     .9
            dd     .10
            dd     .11
    ; ---------------------------------------------------------------------------- ;
    .0      db     "0 = успешно",0
    .1      db     "1 = не определена база и/или раздел жёсткого диска" ,0
    .2      db     "2 = функция не поддерживается для данной файловой системы",0
    .3      db     "3 = неизвестная файловая система",0
    .4      db     "4 = зарезервировано, никогда не возвращается в текущей реализации",0
    .5      db     "5 = файл не найден",0
    .6      db     "6 = файл закончился",0
    .7      db     "7 = указатель вне памяти приложения",0
    .8      db     "8 = диск заполнен",0
    .9      db     "9 = таблица FAT разрушена",0
    .10     db     "10 = доступ запрещён",0
    .11     db     "11 = ошибка устройства",0
    ; ---------------------------------------------------------------------------- ;
    end_:
    Что, интересно, изменилось с того времени?
  • Who is online

    Users browsing this forum: Semrush [Bot] and 5 guests