Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Даже не знаю. Сейчас еще раз зашел и все обновил.
Даже не знаю. Сейчас еще раз зашел и все обновил.
|
|
|
 |
Добавлено: Чт май 26, 2022 19:02 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Нет. Похоже, что целиком нечитаема вся ветка Форт Системы (Forth Systems) => Irbis Forth - 64 bit Форт для Windows ( viewforum.php?f=59) При этом на главной странице видно, что в этой ветке есть новые сообщения (красная иконка слева от названия форума), но при нажатии на "Irbis Forth - 64 bit Форт для Windows" появляется зловещее "У вас нет доступа на чтение тем в этом форуме."
Нет. Похоже, что целиком нечитаема вся ветка Форт Системы (Forth Systems) => Irbis Forth - 64 bit Форт для Windows (http://fforum.winglion.ru/viewforum.php?f=59)
При этом на главной странице видно, что в этой ветке есть новые сообщения (красная иконка слева от названия форума), но при нажатии на "Irbis Forth - 64 bit Форт для Windows" появляется зловещее "У вас нет доступа на чтение тем в этом форуме."
|
|
|
 |
Добавлено: Чт май 26, 2022 18:33 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
А сейчас работает?
А сейчас работает?
|
|
|
 |
Добавлено: Чт май 26, 2022 17:35 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Цитата: Ирбисовые ветки форума (кроме этой) всё так же скрыты от залогиненных пользователей... Власти скрывают)
[quote]Ирбисовые ветки форума (кроме этой) всё так же скрыты от залогиненных пользователей...[/quote] Власти скрывают)
|
|
|
 |
Добавлено: Чт май 26, 2022 13:27 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Немного портированной под Irbis 3D-бродилки вам в ленту: Код: 0 image.show
: rshift dup begin while 1 - swap 2 / swap dup repeat drop ; : putpixel 0 image.pixel ;
: coz abs 2 * 64 - abs 2 * 64 - ;
256 constant WIDTH 192 constant HEIGHT 5 constant BITS 1 BITS lshift constant STEP STEP 1 - constant MASK 0 constant HORZ_WALL 1 constant VERT_WALL
create Map 0x00000 , 0xFFFFE , 0xAAAAA , 0xFFFFE , 0xFC9FE , 0xFDDFE , 0xFF7FE , 0xFDDFE , 0xFC9FE , 0xFFFFE , 0xAAAAA , 0xFFFFE , 0x00000 ,
variable Swing variable LocX variable LocY variable Angle
create CosTable 256 cells allot
: init 1 Angle ! 41 LocX ! 41 LocY ! 147 Swing ! 256 dup begin while 1 - dup coz over cells CosTable + ! dup repeat drop ;
: cos Angle @ cells CosTable + @ ; : sin Angle @ 16 - 63 and cells CosTable + @ ;
variable dist variable color variable x
variable h variable j1 variable j2
: span color ! dist ! x ! HEIGHT dist @ STEP WIDTH * HEIGHT / > if STEP WIDTH * HEIGHT / * dist @ / then h ! HEIGHT h @ - 1 rshift j1 ! j1 @ h @ + j2 ! HEIGHT dup begin while 1 - x @ over dup j2 @ > if 0xFFFFFF else dup j1 @ < if 0 else color @ then then putpixel dup repeat drop ;
variable i0 variable j0 variable u0 variable v0 variable vx variable vy variable da variable db variable a variable b variable u variable v variable u1 variable v1 variable a1 variable b1 variable d variable dx variable dy variable i variable j variable di variable dj variable wall
variable y
: scan v @ u @ < if dy @ STEP + dy ! u @ v @ - u ! v1 @ v ! j @ dj @ + j ! HORZ_WALL else dx @ STEP + dx ! v @ u @ - v ! u1 @ u ! i @ di @ + i ! VERT_WALL then wall ! ;
: calc 1 a @ 0 < if negate u0 @ a @ negate else STEP u0 @ - a @ then a1 ! u ! di ! 1 b @ 0 < if negate v0 @ b @ negate else STEP v0 @ - b @ then b1 ! v ! dj ! u @ dup STEP - dx ! b1 @ dup BITS lshift u1 ! * u ! v @ dup STEP - dy ! a1 @ dup BITS lshift v1 ! * v ! i0 @ i ! j0 @ j !
1 begin while scan Map i @ cells + @ 1 j @ lshift and repeat
wall @ if a1 dx else b1 dy then @ 18 lshift swap @ / d !
dup d @ i @ j @ + 3 and if 0x7F7F7F else 0x3F3F3F then span
a @ da @ + a ! b @ db @ - b ! ;
: scene 0 image.hide
LocX @ dup BITS rshift i0 ! MASK and u0 ! LocY @ dup BITS rshift j0 ! MASK and v0 ! cos 10 lshift vx ! sin 10 lshift vy ! vy @ 7 rshift Swing @ * WIDTH / da ! vx @ 7 rshift Swing @ * WIDTH / db ! vx @ Swing @ vy @ 8 rshift * - a ! vy @ Swing @ vx @ 8 rshift * + b !
WIDTH dup begin while 1 - calc dup repeat drop
0 image.show 10 10 WIDTH HEIGHT 0 image.rect ;
: turn mouse.x 4 / 63 and Angle ! ; use turn to mouse.move
variable forward
: start 1 forward ! ; use start to mouse.left.down
: stop 0 forward ! ; use stop to mouse.left.up
: run forward @ if LocX @ cos 4 rshift + dup x ! BITS rshift i ! LocY @ sin 4 rshift + dup y ! BITS rshift j ! Map i @ cells + @ 1 j @ lshift and if x @ LocX ! y @ LocY ! then then ;
: render run run run scene ;
init 40 timer.interval use render to timer Кстати, по поводу арифметического сдвига. Для отрицательных чисел можно что-то вроде: Код: a >>> b = (a >> b) | (-1 << (63-b)); ну или Код: : rshifta over 63 rshift if swap over rshift swap 63 swap - -1 swap lshift or else rshift then ; , если на форте, но на паскале быстрее должно получиться. Ирбисовые ветки форума (кроме этой) всё так же скрыты от залогиненных пользователей...
Немного портированной под Irbis 3D-бродилки вам в ленту: [code]0 image.show
: rshift dup begin while 1 - swap 2 / swap dup repeat drop ; : putpixel 0 image.pixel ;
: coz abs 2 * 64 - abs 2 * 64 - ;
256 constant WIDTH 192 constant HEIGHT 5 constant BITS 1 BITS lshift constant STEP STEP 1 - constant MASK 0 constant HORZ_WALL 1 constant VERT_WALL
create Map 0x00000 , 0xFFFFE , 0xAAAAA , 0xFFFFE , 0xFC9FE , 0xFDDFE , 0xFF7FE , 0xFDDFE , 0xFC9FE , 0xFFFFE , 0xAAAAA , 0xFFFFE , 0x00000 ,
variable Swing variable LocX variable LocY variable Angle
create CosTable 256 cells allot
: init 1 Angle ! 41 LocX ! 41 LocY ! 147 Swing ! 256 dup begin while 1 - dup coz over cells CosTable + ! dup repeat drop ;
: cos Angle @ cells CosTable + @ ; : sin Angle @ 16 - 63 and cells CosTable + @ ;
variable dist variable color variable x
variable h variable j1 variable j2
: span color ! dist ! x ! HEIGHT dist @ STEP WIDTH * HEIGHT / > if STEP WIDTH * HEIGHT / * dist @ / then h ! HEIGHT h @ - 1 rshift j1 ! j1 @ h @ + j2 ! HEIGHT dup begin while 1 - x @ over dup j2 @ > if 0xFFFFFF else dup j1 @ < if 0 else color @ then then putpixel dup repeat drop ;
variable i0 variable j0 variable u0 variable v0 variable vx variable vy variable da variable db variable a variable b variable u variable v variable u1 variable v1 variable a1 variable b1 variable d variable dx variable dy variable i variable j variable di variable dj variable wall
variable y
: scan v @ u @ < if dy @ STEP + dy ! u @ v @ - u ! v1 @ v ! j @ dj @ + j ! HORZ_WALL else dx @ STEP + dx ! v @ u @ - v ! u1 @ u ! i @ di @ + i ! VERT_WALL then wall ! ;
: calc 1 a @ 0 < if negate u0 @ a @ negate else STEP u0 @ - a @ then a1 ! u ! di ! 1 b @ 0 < if negate v0 @ b @ negate else STEP v0 @ - b @ then b1 ! v ! dj ! u @ dup STEP - dx ! b1 @ dup BITS lshift u1 ! * u ! v @ dup STEP - dy ! a1 @ dup BITS lshift v1 ! * v ! i0 @ i ! j0 @ j !
1 begin while scan Map i @ cells + @ 1 j @ lshift and repeat
wall @ if a1 dx else b1 dy then @ 18 lshift swap @ / d !
dup d @ i @ j @ + 3 and if 0x7F7F7F else 0x3F3F3F then span
a @ da @ + a ! b @ db @ - b ! ;
: scene 0 image.hide
LocX @ dup BITS rshift i0 ! MASK and u0 ! LocY @ dup BITS rshift j0 ! MASK and v0 ! cos 10 lshift vx ! sin 10 lshift vy ! vy @ 7 rshift Swing @ * WIDTH / da ! vx @ 7 rshift Swing @ * WIDTH / db ! vx @ Swing @ vy @ 8 rshift * - a ! vy @ Swing @ vx @ 8 rshift * + b !
WIDTH dup begin while 1 - calc dup repeat drop
0 image.show 10 10 WIDTH HEIGHT 0 image.rect ;
: turn mouse.x 4 / 63 and Angle ! ; use turn to mouse.move
variable forward
: start 1 forward ! ; use start to mouse.left.down
: stop 0 forward ! ; use stop to mouse.left.up
: run forward @ if LocX @ cos 4 rshift + dup x ! BITS rshift i ! LocY @ sin 4 rshift + dup y ! BITS rshift j ! Map i @ cells + @ 1 j @ lshift and if x @ LocX ! y @ LocY ! then then ;
: render run run run scene ;
init 40 timer.interval use render to timer[/code]
Кстати, по поводу арифметического сдвига. Для отрицательных чисел можно что-то вроде: [code]a >>> b = (a >> b) | (-1 << (63-b));[/code]ну или [code]: rshifta over 63 rshift if swap over rshift swap 63 swap - -1 swap lshift or else rshift then ;[/code], если на форте, но на паскале быстрее должно получиться.
Ирбисовые ветки форума (кроме этой) всё так же скрыты от залогиненных пользователей...
|
|
|
 |
Добавлено: Чт май 26, 2022 11:02 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Точно нужно: - кросс-компиляция (редактор, UART, файлы, графики) - 3D-графика и color map для визуализации расчетов - просто графики (статистика, ЦОС) Под эти задачи Irbis дополняется словами в первую очередь. Прочие виджеты, таймер, midi - это уже в рамках общего развития инструмента. Тем не менее, добавить часто используемые компоненты общего назначения несложно.
Сейчас уже можно делать довольно много. WinMerge - ну в принципе да, не уверен насчет раскраски фрагментов текста в SynEdit.
Точно нужно: - кросс-компиляция (редактор, UART, файлы, графики) - 3D-графика и color map для визуализации расчетов - просто графики (статистика, ЦОС) Под эти задачи Irbis дополняется словами в первую очередь. Прочие виджеты, таймер, midi - это уже в рамках общего развития инструмента. Тем не менее, добавить часто используемые компоненты общего назначения несложно.
Сейчас уже можно делать довольно много. WinMerge - ну в принципе да, не уверен насчет раскраски фрагментов текста в SynEdit.
|
|
|
 |
Добавлено: Чт май 12, 2022 12:43 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
А, есть ли какая то дорожная карта по проекту Irbis Форта?
P.S. т.е. насколько, к примеру, эта среда может превратиться в продвинутую и "Форт" IDE? расширяемую Форт плагинами, к примеру для добавления сравнения файлов как в WinMerge программе.
А, есть ли какая то дорожная карта по проекту Irbis Форта?
P.S. т.е. насколько, к примеру, эта среда может превратиться в продвинутую и "Форт" IDE? расширяемую Форт плагинами, к примеру для добавления сравнения файлов как в WinMerge программе.
|
|
|
 |
Добавлено: Чт май 12, 2022 09:43 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Victor__v писал(а): Можете привести пример кода, где это встречается? Это "тернарный условный оператор" в Си. Просто к месту пришлось в конкретной мелкой программке, так что и добавилось. Victor__v писал(а): Согласно документации у вас есть обёртки для виндяшного фасткалла под 5 и 6 операндов. Можете рассказать почему сделано именно так, а не, допустим, общий шаблон, когда параметров больше 4? А какой общий шаблон поддерживает free Pascal? Я просто не видел именно общего шаблона в терминах языка, без ручной правки кода (которая дает риск попасть под внимание антивирусов). Есть переменные типа procedure и function, вторая как раз подходит для GetProcAddress, но у нее должен быть статически определенный формат вызова. Если будут идеи, могу добавить.
[quote="Victor__v"]Можете привести пример кода, где это встречается?[/quote] Это "тернарный условный оператор" в Си. Просто к месту пришлось в конкретной мелкой программке, так что и добавилось.
[quote="Victor__v"]Согласно документации у вас есть обёртки для виндяшного фасткалла под 5 и 6 операндов. Можете рассказать почему сделано именно так, а не, допустим, общий шаблон, когда параметров больше 4?[/quote] А какой общий шаблон поддерживает free Pascal? Я просто не видел именно общего шаблона в терминах языка, без ручной правки кода (которая дает риск попасть под внимание антивирусов). Есть переменные типа procedure и function, вторая как раз подходит для GetProcAddress, но у нее должен быть статически определенный формат вызова. Если будут идеи, могу добавить.
|
|
|
 |
Добавлено: Сб апр 30, 2022 00:22 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Вопросы по реализации: Цитата: ? // x1, x2, flag -- вернуть x1, если flag ИСТИНА или x2, если ЛОЖЬ Можете привести пример кода, где это встречается? Сделать такое тривиально сразу на форте, но лично у меня 1,5 примера где все это используется. Согласно документации у вас есть обёртки для виндяшного фасткалла под 5 и 6 операндов. Можете рассказать почему сделано именно так, а не, допустим, общий шаблон, когда параметров больше 4?
Вопросы по реализации:
[quote]? // x1, x2, flag -- вернуть x1, если flag ИСТИНА или x2, если ЛОЖЬ[/quote]
Можете привести пример кода, где это встречается? Сделать такое тривиально сразу на форте, но лично у меня 1,5 примера где все это используется.
Согласно документации у вас есть обёртки для виндяшного фасткалла под 5 и 6 операндов. Можете рассказать почему сделано именно так, а не, допустим, общий шаблон, когда параметров больше 4?
|
|
|
 |
Добавлено: Пт апр 29, 2022 09:48 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Hishnik писал(а): Новый архив кто-то скачивает... кто?  Если боты, это одно, но если у кого-то из подписчиков есть доступ, значит форумные права выставлены нормально. Дык, скачать-то просто – разлогиниваемся и качаем.
[quote="Hishnik"]Новый архив кто-то скачивает... кто? :) Если боты, это одно, но если у кого-то из подписчиков есть доступ, значит форумные права выставлены нормально.[/quote]
Дык, скачать-то просто – разлогиниваемся и качаем.
|
|
|
 |
Добавлено: Вт апр 26, 2022 11:02 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
KPG писал(а): Victor__v писал(а): Скриншот утверждает обратное) А, у меня, при регистрации на форуме с Tor, вообще этот топик исчез из списка последних топиков, хотя без регистрации он есть и доступен для скачивания. P.S. А под 32-бит Windows и Linux планируется собрать программу? У меня все точно также. Только браузер: Avast Secure Browser.
[quote="KPG"][quote="Victor__v"]Скриншот утверждает обратное)[/quote] А, у меня, при регистрации на форуме с Tor, вообще этот топик исчез из списка последних топиков, хотя без регистрации он есть и доступен для скачивания.
P.S. А под 32-бит Windows и Linux планируется собрать программу?[/quote] У меня все точно также. Только браузер: Avast Secure Browser.
|
|
|
 |
Добавлено: Вт апр 26, 2022 07:24 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
KPG писал(а): А ForthHaiku в его разрешении 256x256 не было идеи проверить? После коррекции получается как-то так
Вложения: |

irbis10.png [ 106.51 Кб | Просмотров: 10263 ]
|
[quote="KPG"]А ForthHaiku в его разрешении 256x256 не было идеи проверить?[/quote] После коррекции получается как-то так
|
|
|
 |
Добавлено: Пн апр 25, 2022 21:47 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Hishnik писал(а): [Это может быть и посторонняя проблема, тут я ничего сказать не могу. В форумном движке ограничений не установлено.. Возможно, но при этом сообщение в топик при регистрации не запостить. P.S. А ForthHaiku в его разрешении 256x256 не было идеи проверить? https://forthsalon.appspot.com/
[quote="Hishnik"][Это может быть и посторонняя проблема, тут я ничего сказать не могу. В форумном движке ограничений не установлено..[/quote] Возможно, но при этом сообщение в топик при регистрации не запостить.
P.S. А ForthHaiku в его разрешении 256x256 не было идеи проверить? https://forthsalon.appspot.com/
|
|
|
 |
Добавлено: Пн апр 25, 2022 20:21 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
KPG писал(а): А, у меня, при регистрации на форуме с Tor, вообще этот топик исчез из списка последних топиков, хотя без регистрации он есть и доступен для скачивания. Это может быть и посторонняя проблема, тут я ничего сказать не могу. В форумном движке ограничений не установлено. KPG писал(а): А под 32-бит Windows и Linux планируется собрать программу? 32-бит Windows в ближайшем окружении просто нету, даже не знаю, стоит ли. Для Linux теоретически должно собираться, Lazarus там работает. Соотношение между "добавить виджетов" и "проверять на Win/Linux" надо еще определить. От версии в текущем состоянии уже много чего полезного идет, а сторонние пробы вообще неисчерпаемый источник багрепортов и предложений по улучшению.
[quote="KPG"]А, у меня, при регистрации на форуме с Tor, вообще этот топик исчез из списка последних топиков, хотя без регистрации он есть и доступен для скачивания.[/quote] Это может быть и посторонняя проблема, тут я ничего сказать не могу. В форумном движке ограничений не установлено.
[quote="KPG"]А под 32-бит Windows и Linux планируется собрать программу?[/quote] 32-бит Windows в ближайшем окружении просто нету, даже не знаю, стоит ли. Для Linux теоретически должно собираться, Lazarus там работает. Соотношение между "добавить виджетов" и "проверять на Win/Linux" надо еще определить. От версии в текущем состоянии уже много чего полезного идет, а сторонние пробы вообще неисчерпаемый источник багрепортов и предложений по улучшению.
|
|
|
 |
Добавлено: Пн апр 25, 2022 19:57 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Об Irbis Forth - 64 bit Форт для Windows замолвите слово |
 |
|
Victor__v писал(а): Скриншот утверждает обратное) А, у меня, при регистрации на форуме с Tor, вообще этот топик исчез из списка последних топиков, хотя без регистрации он есть и доступен для скачивания. P.S. А под 32-бит Windows и Linux планируется собрать программу?
[quote="Victor__v"]Скриншот утверждает обратное)[/quote] А, у меня, при регистрации на форуме с Tor, вообще этот топик исчез из списка последних топиков, хотя без регистрации он есть и доступен для скачивания.
P.S. А под 32-бит Windows и Linux планируется собрать программу?
|
|
|
 |
Добавлено: Пн апр 25, 2022 19:20 |
|
|
 |
|