Wild Commander

Сабжи короче

Postby VBI » Mon, 29.07.2013 22:13:56

эх блин))
говорю-же - провокация)))
:beer: :D
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby LessNick » Mon, 29.07.2013 22:29:43

Это не провокация, а мотивация :)
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

Postby DimkaM » Tue, 30.07.2013 08:40:15

VBI wrote:нормальные имена фалов
"КакиетоДиззиИЭксолон.trd МояСупериграНаБейсике128.trd ХзЧёЕщёНеСмотрел001.trd" - вот это явно ненормальные имена
lvd> Вроде да, но по матану спец TS-Labs, пусть расово верно и православно одобрит. :-P
DimkaM
 
Posts: 268
Joined: Thu, 26.07.2012 12:36:38
ICQ: 335232898

Postby VBI » Tue, 30.07.2013 09:01:45

Дим, вот свежий пример: placebo-hb_sveta.trd. получше, чем placeb~1.trd.
много придётся переделать, если из 32байт на запись сделать, например, 48 или 64?
например, 48:
;------Шаблон элемента каталога:--------
ENTRY DS 27
EFLG DB 0,0
DB #00;ms
DW #7000:DW #3910;time,date
DW #3910;acc date
CLSDE DS 2
DW #7000:DW #3910;time,date
CLSHL DS 2
SIZIK DS 4
NOP

это DSDZC.ASM
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby DimkaM » Tue, 30.07.2013 09:29:07

VBI wrote:Дим, вот свежий пример: placebo-hb_sveta.trd. получше, чем placeb~1.trd.
Полностью согласен.
Выше пост был оффтопом, камнем в огород блондинкам. Накипело. Которые потом эти файлы отправляют по почте. Почтовый сервер эти имена коверкает как хочет, вплоть до удаления расширения, замены пробелов на %20. А мне блять надо чтоп 1Ска подцепила этот экселевский файл и обработала, а она ругается и не хочет его цеплять потомучто имя уёбищное. Вернее сама 1Ска его цепляет, но
xl=СоздатьОбъект("Excel.Application");
xl.Workbooks.Open(путь);
выдаёт ошибку. Я то эксепшен отлавливаю, програмно переименовываю файл, сообщаю об этом юзеру. Но блять тупая блондинка(уже в нашей конторе) звонит мне и говорит "Дим у меня ниче не работает, скачала файл на рабочий стол, обработала, а его там нет!!!"
lvd> Вроде да, но по матану спец TS-Labs, пусть расово верно и православно одобрит. :-P
DimkaM
 
Posts: 268
Joined: Thu, 26.07.2012 12:36:38
ICQ: 335232898

Postby DimkaM » Tue, 30.07.2013 09:56:21

VBI wrote:много придётся переделать, если из 32байт на запись сделать, например, 48 или 64?
например, 48:

Что там у Баддера незнаю. лонгнейм потдерживает(теоретически) до ~250 символов. Теоретически потому что полный путь до 256(255?!) символов(байт?! непомню).
Я юзаю вот такую структуру
Code: Select all
/* File status structure (FILINFO) */

typedef struct {
        DWORD   fsize;                  /* File size */
        WORD    fdate;                  /* Last modified date */
        WORD    ftime;                  /* Last modified time */
        BYTE    fattrib;                /* Attribute */
        TCHAR   fname[13];              /* Short file name (8.3 format) */
#if _USE_LFN
        TCHAR*  lfname;                 /* Pointer to the LFN buffer */
        UINT    lfsize;                 /* Size of LFN buffer in TCHAR */
#endif
} FILINFO;
lfname указатель на буфер куда функция FRESULT f_readdir (DIR*, FILINFO*) поместит лонгнейм.
От меня в эту структуру были добавлены пару указателей(+номера паг) на предыдущую и следующую структуры и флаг маркировки(в панели).(без лонгнейма)
Code: Select all
/* FILE STATUS STRUCTURE (FILINFO) */
   STRUCT FILINFO
FSIZE   DWORD      ;/* FILE SIZE */
FDATE   WORD      ;/* LAST MODIFIED DATE */
FTIME   WORD      ;/* LAST MODIFIED TIME */
FATTRIB   BYTE      ;/* ATTRIBUTE */
FNAME   BLOCK 16,0   ;/* SHORT FILE NAME (8.3 FORMAT) */
MARK   byte      ;marking
NEXT   WORD
NEXTP   BYTE
PREV   WORD
PREVP   BYTE
;RESERV   dw         
   ENDS

Вот собственно чтение и сортировка записей(без лонгнейма)(с комментированием напряжонка):
Code: Select all
readfnos
   ld a,mem.fat_p
   ld bc,mem.b1
   out (c),a
   WIN_GETPAGES a
   ld (.num),a
   ld b,high mem.b2
   out (c),a
   ld de,0xc000
   ld (ix+txt.FWIN.fno_1),de   
   ld (ix+txt.FWIN.p_fno_1),a
   MEM_SET 0x8000,0,0x20
   ld a,(ix+txt.FWIN.drive):add a,0x30:ld (curdir),a
   ld de,dir
   ld bc,curdir
   F_OPDIR
.l2   ld bc,0x8000
.l1   ld de,dir
   F_RDIR
   push bc:pop iy
   ld a,FILINFO.FNAME:add c:ld c,a
   LD A,(BC):or a:ret z
   dec c
   sub 0x2e:or (iy+FILINFO.FNAME+1)
   jr z,.l2      ;пропускаем точку
   ld a,(bc):and 0x10:jr nz,.cat
   ld a,0x20
.cat   ld (bc),a
   ld d,b,e,c
   push bc
   call fno_sort
   pop bc
   ADDBC8 0x18
   bit 6,b:jr z,.l1
   ld hl,.num:inc (hl)
   ld bc,mem.b2:ld a,(hl)
   out (c),a
   ld bc,0x8000
   jr .l1
.num   word 0

fno_sort
   xor a:ld hl,0x8008:sbc hl,de:jp z,.first
   ld a,(ix+txt.FWIN.p_fno_1)
   ld bc,mem.b3
   out (c),a
   ld (.num),a
   ld a,(ix+txt.FWIN.fno_1):ld h,(ix+txt.FWIN.fno_1+1)
   add FILINFO.FATTRIB:ld l,a
.l3   ld a,(de):cp (hl):jr .cat
.l2   inc l,e
   ld a,(de):or (hl):jr z,.prev
   ld a,(de):cp (hl)
.cat   jr z,.l2
   jr c,.prev
   ld a,l
   and %11100000:or FILINFO.NEXT:ld l,a ;get fno
   ld c,(hl):inc hl:ld b,(hl):inc hl:ld a,(hl)
   or a:jr z,.new
   ld hl,FILINFO.FNAME-1 ; -4000+9
   add hl,bc
   ld bc,mem.b3:out (c),a
   ld (.num),a
   ld a,e:and %11100000
   or FILINFO.FATTRIB:ld e,a ;взад на имя
   jr .l3
.new   ;добавим после текущего
   ld a,l:and %11100000:ld l,a   ;смещение в ноль
   push hl:ex (sp),ix         ;в индексный
   push iy:pop de:set 6,d
   xor a
   ld (iy+FILINFO.NEXTP),a      ;устанавливаем следующий фно zero
   ld a,(.num)
   ld (iy+FILINFO.PREVP),a   ;устанавливаем предыдущий
   ld (iy+FILINFO.PREV),hl
   ld (ix+FILINFO.NEXT),de      ;устанавливаем следующий
   ld a,(readfnos.num)
   ld (ix+FILINFO.NEXTP),a      
   pop ix:ret
   
.prev   ;вставим перед текущим
   ld a,l:and %11100000:ld l,a   ;смещение в ноль
   push hl:ex (sp),ix         ;в индексный
   push iy:pop de:set 6,d
   ld a,(.num)
   ld (iy+FILINFO.NEXTP),a
   ld (iy+FILINFO.NEXT),hl   ;устанавливаем следующий фно
   ld hl,(ix+FILINFO.PREV)      ;берём предыдущий фно
   ld (iy+FILINFO.PREV),hl      ;устанавливаем предыдущий
   ld (ix+FILINFO.PREV),de      ;устанавливаем предыдущий
   ld a,(readfnos.num):ld b,a
   ld a,(ix+FILINFO.PREVP)
   ld (ix+FILINFO.PREVP),b
   ld (iy+FILINFO.PREVP),a
   pop ix
   or a:jr z,.firstfno   ;если ноль то первый элемент списка
   ld bc,mem.b3:out (c),a
   push hl:pop iy
   ld (iy+FILINFO.NEXT),de   ;установим следующим
   ld a,(readfnos.num)
   ld (iy+FILINFO.NEXTP),a
   ret
.first
   push iy:pop de:set 6,d
   xor a
   ld (iy+FILINFO.PREVP),a
   ld (iy+FILINFO.NEXTP),a
.firstfno
   ld (ix+txt.FWIN.fno_1),de   ;запомним первый элемент списка
   ld a,(readfnos.num)
   ld (ix+txt.FWIN.p_fno_1),a
   ret
lvd> Вроде да, но по матану спец TS-Labs, пусть расово верно и православно одобрит. :-P
DimkaM
 
Posts: 268
Joined: Thu, 26.07.2012 12:36:38
ICQ: 335232898

Postby DimkaM » Tue, 30.07.2013 10:39:14

гы. смотрю и нихера не понимаю
lvd> Вроде да, но по матану спец TS-Labs, пусть расово верно и православно одобрит. :-P
DimkaM
 
Posts: 268
Joined: Thu, 26.07.2012 12:36:38
ICQ: 335232898

Postby Koshi » Tue, 30.07.2013 21:59:46

как бы все тут: http://zx-evo-fpga.googlecode.com/svn/b ... C_todo.txt
наибольший приоритет у того, что вверху.
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby Koshi » Sun, 25.08.2013 10:08:49

v0.50 (24.08.2013):
.правлен баг: вешался прогресс бар, на файлах меньше 64 байт
.увеличен размер видео буфера, выделяемого плагинам (добавлен 3й видео экран, см. функционал)
.добавлены параметры панелей в INI файл (изменена версия такового)
.в сборку добавлена версия коммандера 80x25 (WildCommanderWide)

P.S. первый пост так же обновил
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby Buyan » Sun, 25.08.2013 10:51:50

Koshi wrote:.добавлены параметры панелей в INI файл (изменена версия такового)

А как это должно работать? У меня используется только SDzc, прописал единицы в конфиг для обоих панелей, но все равно каждый раз при ресете device not found выскакивает, причем если раньше это один раз было, то теперь два раза приходится выбирать..
Buyan
 
Posts: 159
Joined: Fri, 08.03.2013 19:14:56

Postby Koshi » Sun, 25.08.2013 13:04:44

Buyan, фиксед )

P.S. перезалил хобеты
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby Buyan » Sun, 25.08.2013 13:50:25

Koshi wrote:фиксед )

Спасибо! Работает как надо :ok2:
Buyan
 
Posts: 159
Joined: Fri, 08.03.2013 19:14:56

Postby amixgris » Mon, 02.09.2013 21:37:50

Итак, во избежание всяческих там эксцессов реквестирую добавление в WC API следующих функций:
1) запуск ПДП с возможностью установки выравнивания для источника и/или приёмника,
2) запуск ПДП в режиме блиттера;
3) запуск ПДП в режиме зачистки памяти;
4) запуск ПДП с адресатом CRAM;
5) запуск ПДП с адресатом SFILE.
User avatar
amixgris
 
Posts: 161
Joined: Mon, 30.07.2012 03:22:48
LOCATION: Самара

Postby Black_Cat » Mon, 04.11.2013 11:30:31

Hi Koshi. Глянь пож. сюда: viewtopic.php?f=9&t=330&p=7067#p7067 . Нельзя ли пересобрать на базе твоего Wild Commander максимально упрощённую и урезанную в функционале Lite версию?
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby Koshi » Sun, 17.11.2013 06:05:05

Black_Cat wrote:Нельзя ли пересобрать на базе твоего Wild Commander максимально упрощённую и урезанную в функционале Lite версию?

лайтов не планирую, хотя под обычный zx128 есть планы переделать...

---

v0.53 (16.11.2013):
.правлен баг: убрано обращение к порту #2AAF
.правлен баг: запуск SPGv0.x не работал

P.S. обновляться в обязательном порядке (до конфы), критичный баг
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby VBI » Tue, 19.11.2013 22:00:02

Koshi, подскажи, а F4 вообще не работает? edit написано, а тыкать бесполезно.
хотел wc.ini поправить
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby Koshi » Wed, 20.11.2013 07:07:14

пока-что не работает ;P
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby g0blinish » Wed, 20.11.2013 07:57:51

скринсейвер ещо не допилили? :smoke:
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby Koshi » Tue, 26.11.2013 18:09:26

VBI wrote:здесь исходников ещё нет загрузки тапа?

лень заливать было ТТ
со след. версией плагина мб появятся...
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby noleg » Tue, 26.11.2013 19:07:26

я поймал себя на мысли, что понятней смотреть дебаг в анриле чем исходники
[16:36:13] <TSL> 3. плаг под ВЦ будет писать пушкин. я ему звонил, он согласился
User avatar
noleg
 
Posts: 38
Joined: Mon, 12.08.2013 17:51:25

Postby Koshi » Sat, 30.11.2013 01:07:48

v0.54 (29.11.2013):
.добавлено выставление внутренней частоты по выходу из плагинов (задается в ини)
.добавлено отображение пути к активному каталогу
.добавлен раздел SETUP в ini файл (можно задать частоту процессора и выбрать режим хранения позиций панелей в ОЗУ)
.добавлен плагин: TAP Mounter
.добавлен плагин: IFF/ILBM Viewer

P.S. так же залил все сорцы

---

небольшой пак пикч: https://www.dropbox.com/s/w6wetesv5kw52um/ILBM.ZIP
Last edited by Koshi on Sat, 30.11.2013 17:39:57, edited 1 time in total.
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby TS-Labs » Sat, 30.11.2013 04:11:21

Кэш в запуске хобет добавил?
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby Koshi » Tue, 03.12.2013 00:08:26

v0.55 (02.12.2013):
.расширен функционал плагинной системы, сменена версия таковой (функции DMAPL, GVtm, GVtl, GVsgp)
.увеличен размер графического буфера до 64 страниц (1мб)
.исправлен баг: не сбрасывался путь в панели при запуске, если носитель отсутствовал
.обновлена документация на плагинную систему

P.S. всем новым плагинам в заголовке теперь нужно указывать версию #03!
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

Postby VBI » Tue, 03.12.2013 22:57:10

Koshi, большое спасибо за ТАП-лоадер.
если это возможно, добавь в плаг варианты загрузки: оригинальный (по времени), турбо (как сейчас), и мгновенный (насколько возможно)
и глянь, плиз, как грузится Ahh.. the tape loading era! by ate bit, там что-то есть. либо у меня что-то)

и что делает вклюение кеш-а?
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby Koshi » Fri, 06.12.2013 02:30:39

VBI wrote:если это возможно, добавь в плаг варианты загрузки: оригинальный (по времени), турбо (как сейчас), и мгновенный (насколько возможно)

оригинал то мб, а на счет мгновенной хз. сделать можно, но таки не побитово ;P

VBI wrote:и что делает вклюение кеш-а?

ВНЕЗАПНО: включает кеш... (вкратце описано тут)
MGN Group
User avatar
Koshi
 
Posts: 299
Joined: Thu, 26.07.2012 16:41:52

PreviousNext

Return to Utilities

Who is online

Users browsing this forum: No registered users and 1 guest

x