 |
nedoPC.orgElectronics hobbyists community established in 2002 |
 |
Author |
Message |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
Свершилось: https://blog.github.com/2018-06-04-github-microsoft/и свободолюбивый народ повалил дружными косяками с гитхаба на гитлаб...
|
04 Jun 2018 20:12 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
GitLab рапортует массовый наплыв - его даже можно отслеживать вживую https://monitor.gitlab.net/dashboard/db/github-importer?orgId=1
|
05 Jun 2018 10:03 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
создал себе аккаунт на гитлабе: https://gitlab.com/shaosа также завёл группу "Balanced Ternary Group" https://gitlab.com/ternaryP.S. группу nedoPC projects тоже завёл https://gitlab.com/nedopc
|
05 Jun 2018 12:30 |
|
 |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Зашел - чисто из спортивного интересу... Гитхаб всегда мне говорил, что "Опера 9.64" - устаревший браузер и ничего практически не показывал... ГитЛаб мою "Оперу 9.64" никак не ругал, но показал всё вот так: Видимо, это не совсем всё же правильно... но терпимо. Гитхаб мне и скачивать ничего не давал... надо будет проверить, как с этим у ГитЛаб-а... 
_________________ iLavr
|
05 Jun 2018 12:46 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
Ок - перенесу для теста некоторые репозитории и дам знать - попробуешь 
|
05 Jun 2018 13:54 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
Перенёс все репы и кое-что даже разложил по группам 
|
05 Jun 2018 22:15 |
|
 |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Скачалось! Для примера ткнул первое попавшееся: Kostyantyn Matlayev / Flights · GitLabИ скачал архив! Я вообще не знаю, зачем Гитхаб так выкаблучивался - ну не было там особого функционала, который не могла бы осилить "Опера"... 
_________________ iLavr
|
06 Jun 2018 04:05 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
Всё - мой гитхаб пуст 
|
06 Jun 2018 20:30 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
Массовый наплыв закончился, но ежедневные небольшие всплески ещё продолжаются...
|
08 Jun 2018 18:00 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
|
26 Oct 2018 17:43 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|

 |  |  |  | Shaos wrote: Вот пример с циклами: и вот во что они превращаются после препроцессора: после компиляции в байткод: и после кросс-копиляции в код 8080:  |  |  |  | Code: \ Generated by RW0COMP v2.0 (part of NedoPC SDK, see http://www.nedopc.org) \ Copyright (c) 2001-2005, Alexander Shabarshin <shaos@mail.ru>
ORG #0000 @BASE EQU #4000 @REGS EQU 16448 @REG_X EQU 16448 @REG_Y EQU 16450 \REG_D @REG_N EQU 16454 \REG_K @REG_R EQU 16458 @REG_T EQU 16460 \REG_E \REG_M \REG_I @REG_A EQU 16468 @REG_B EQU 16470 @REG_C EQU 16472 \REG_P @REG_L EQU 16476 \REG_S @RAND EQU 1000 JMP HEADER \ DATA _L_BASE DW @BASE _L_REGS DW @REGS _L_STAK DW @REGS CHX DB 0 CHY DB 0 CHS DB 4 CHB DB 0 _NPLANE DW 0 _ANGLE DB 0 _COLOR DB 0 _CURX DB 0 _CURY DB 0 _SAYX DB 0 _SAYY DB 0 _SAYC DB 2 _ATRS DB 0 HEADER: \ INIT SYSTEM CALL INIT \ SET _SAYX & _SAYY XRA_A STA _SAYX MVI_A, @DY DCR_A STA _SAYY \ ERASE FROM BASE TO REGS+32 LHLD _L_BASE XCHG LHLD _L_REGS LXI_B, 32 DAD_B XCHG MVI_C, 0 _STD_1: MOV_M,C INX_H MOV_A,H CMP_D JNZ _STD_1 MOV_A,L CMP_E JNZ _STD_1 \ SET SP & SAVE RETADDR POP_D LHLD _L_STAK SPHL PUSH_D _START: \ *0x20 0x01 0x0A 0xFF %m2 _j0000: LXI_H, #0000 SHLD @REG_A \ *0x40 _j0007: \ 0xF5 PUSH_H LXI_H, #FF0E \ 0xF5 PUSH_H LXI_H, #FF0A \ 0xF3 MVI_A, #FF CMP_H JNZ _l0001 \ REGISTER CALL _R_GET JMP _l0002 _l0001: NOP \ VARIABLE CALL _B_GET _l0002: NOP \ 0xF5 PUSH_H LXI_H, #0014 \ 0x93 POP_D CALL CCLT \ 0xF4 POP_D XCHG MVI_A, #FF CMP_H JNZ _l0003 \ REGISTER CALL _R_SET JMP _l0004 _l0003: NOP \ VARIABLE CALL _B_SET _l0004: NOP POP_H \ *0x42 0x01 0x0E 0xFF 0x00 %w1 _j0015: LDA @REG_L ORA_A JZ _j006A \ *0x20 0x01 0x0B 0xFF %m2 _j001C: LXI_H, #0000 SHLD @REG_B \ *0x40 _j0023: \ 0xF5 PUSH_H LXI_H, #FF0E \ 0xF5 PUSH_H LXI_H, #FF0B \ 0xF3 MVI_A, #FF CMP_H JNZ _l0005 \ REGISTER CALL _R_GET JMP _l0006 _l0005: NOP \ VARIABLE CALL _B_GET _l0006: NOP \ 0xF5 PUSH_H LXI_H, #000A \ 0x93 POP_D CALL CCLT \ 0xF4 POP_D XCHG MVI_A, #FF CMP_H JNZ _l0007 \ REGISTER CALL _R_SET JMP _l0008 _l0007: NOP \ VARIABLE CALL _B_SET _l0008: NOP POP_H \ *0x42 0x01 0x0E 0xFF 0x00 %w1 _j0031: LDA @REG_L ORA_A JZ _j0058 \ *0x69 %m1 %m2 _j0038: LXI_H, #000A CALL _R_GET PUSH_H LXI_H, #000B CALL _R_GET POP_D MOV_A,E STA _CURX MOV_A,L STA _CURY \ *0x6A 0x00 %w1 0x00 0x00 0x00 _j003F: LXI_H, #2000 CALL _SET \ *0x40 _j0046: \ 0xF5 PUSH_H LXI_H, #FF0B \ 0xF5 PUSH_H LXI_H, #FF0B \ 0xF3 MVI_A, #FF CMP_H JNZ _l0009 \ REGISTER CALL _R_GET JMP _l0010 _l0009: NOP \ VARIABLE CALL _B_GET _l0010: NOP \ 0xF5 PUSH_H LXI_H, #0001 \ 0xA0 POP_D DAD_D \ 0xF4 POP_D XCHG MVI_A, #FF CMP_H JNZ _l0011 \ REGISTER CALL _R_SET JMP _l0012 _l0011: NOP \ VARIABLE CALL _B_SET _l0012: NOP POP_H \ *0x43 0x00 %w1 _j0054: JMP _j0023 \ *0x40 _j0058: \ 0xF5 PUSH_H LXI_H, #FF0A \ 0xF5 PUSH_H LXI_H, #FF0A \ 0xF3 MVI_A, #FF CMP_H JNZ _l0013 \ REGISTER CALL _R_GET JMP _l0014 _l0013: NOP \ VARIABLE CALL _B_GET _l0014: NOP \ 0xF5 PUSH_H LXI_H, #0001 \ 0xA0 POP_D DAD_D \ 0xF4 POP_D XCHG MVI_A, #FF CMP_H JNZ _l0015 \ REGISTER CALL _R_SET JMP _l0016 _l0015: NOP \ VARIABLE CALL _B_SET _l0016: NOP POP_H \ *0x43 0x00 %w1 _j0066: JMP _j0007 \ *0x00 _j006A: \ NOP is empty operation \ *0xFF _j006B: +./LIB/I8080/ORION +./LIB/I8080/_CLIB +./LIB/I8080/_VARS +./LIB/I8080/_PLATF2 +./LIB/I8080/NULL_
|  |  |  |  |
путём добавления более оптимального кода для A=0, B=0, C=0, A<N, A=A+1 и т.д. в __RULES можно сделать более опитимальное представление этого кода для 8080 (и соответственно более быстрое)... |  |  |  |  |
Вот чего действительно недостаёт в nedoPC SDK так это компиляции Robby-программы в исходник на сях, который можно было бы затем скомпилировать под целевую платформу (текстовый дос или текстовый (ncurses) линух (а может даже графический дос и графический линух?)) - это сильно бы упростило отладку и соответственно разработку нового робби-кода (хотя не - графическим пусть будет интерпретатор байт-кода, а компилятор^2 пусть будет только текстовым)...
|
02 May 2020 23:18 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
Кстати оказалось, что в линухе текст можно раскрашивать и переставлять по экрану без ncurses https://wiki.bash-hackers.org/scripting/terminalcodesНвдо чтоли свой conio.h накидать для линуха, чтобы один и тот же исходник собирался и в досе, и в линухе  clrscr, gotoxy, getch[e] уже есть вот тут: https://github.com/pushkar147/conio4gcc плюс раскрашивание (textcolor и textbackground) сделать как описано по ссылке выше - ескейп-последовательностями и по сути всё (разве что если надо спецкнопки обрабатывать - типа функциональных, стрелок и т.д. то проверка по getch в программе будет другая в случае линуха) P.S. kbhit можно взять отсюда: https://cboard.cprogramming.com/c-programming/63166-kbhit-linux.htmlP.P.S. cprintf можно свой накатать (в досе надо cprintf юзать, чтобы раскрашивало), в котором подсчитывать текущую позицию курсора - вот и wherex с wherey покроются!
|
03 May 2020 09:01 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|

Переосмысливая идеи 2014 года можно предложить следующее Пакет с именем файла - это массив слов, в первом слове которого указано количество следующих далее букв и сейчас поддерживается только чтение (например в Circuits.CC): "filename" - прочитать текст из файла с именем filename, разместив его начиная с адреса #8000 по одной букве на слово, причём количество скопированных букв приходит в ответе от @filesystem По аналогии добавляем: "filename!" - записать буфер в файл с именем filename, причём пишем только младшие байты и останавливаемся, когда встретили ноль "filename%" - прочитать двоичный файл, упаковав байты по 2 в слово (от системы придет прочитанный размер в байтах) "filename%hhh" - записать двоичный файл с байтовым размером hhh (шестнадцатиричное число) пользуясь словами из буфера (если размер нечётный, то из последнего слова возьмется только младший байт) "filename+" - дополнить текстовый файл строкой из буфера (буква на слово, писать до нуля) - хотя может быть проще say перенаправить в файл... Работу с произвольным адресом пока можно отложить на будущее, но уже можно считать, что там в систему будут передаваться не строки, а структуры - с адресом, длиной, смещением внутри файла и т.д. P.S. Скелет программы (вырезка из TERNARO.R):
|
03 May 2020 13:21 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
также можно пойти ещё дальше и специально для z80 сделать робби-регистры A,B и C представляемыми индексными регистрами IX, IY и скажем HL' P.S. в случае z80 можно вообще убрать из памяти секцию регистров, распределив все доступные в RW1P2 регистры Robby либо по теневым регистрам процессора, либо сделав их полностью процедурными:
|
27 Dec 2020 17:35 |
|
 |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 21045 Location: Silicon Valley
|
 |  |  |  | Shaos wrote: Кстати оказалось, что в линухе текст можно раскрашивать и переставлять по экрану без ncurses https://wiki.bash-hackers.org/scripting/terminalcodesНвдо чтоли свой conio.h накидать для линуха, чтобы один и тот же исходник собирался и в досе, и в линухе  clrscr, gotoxy, getch[e] уже есть вот тут: https://github.com/pushkar147/conio4gcc плюс раскрашивание (textcolor и textbackground) сделать как описано по ссылке выше - ескейп-последовательностями и по сути всё (разве что если надо спецкнопки обрабатывать - типа функциональных, стрелок и т.д. то проверка по getch в программе будет другая в случае линуха) P.S. kbhit можно взять отсюда: https://cboard.cprogramming.com/c-programming/63166-kbhit-linux.htmlP.P.S. cprintf можно свой накатать (в досе надо cprintf юзать, чтобы раскрашивало), в котором подсчитывать текущую позицию курсора - вот и wherex с wherey покроются! |  |  |  |  |
Вот так в линуксе можно раскрашивать текст в терминале: Результат вышеприведённой программы вот:
|
20 Feb 2021 20:20 |
|
|
Who is online |
Users browsing this forum: No registered users and 4 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|