Мои локаторы засекли на форуме автора самой необходимой утилы для реальщика - Spectrum Navigator!
Очень хочется услышать будет ли продолжение?
Кстати почему исходники закрыл?
Вид для печати
Мои локаторы засекли на форуме автора самой необходимой утилы для реальщика - Spectrum Navigator!
Очень хочется услышать будет ли продолжение?
Кстати почему исходники закрыл?
не успеешь зарегистрицца - так на чисту воду выведят :)
вы знаете, мне до сих пор на мобилу чуваки из других городов звонят, интересуются, как чего, несомненно - приятно, но я каждый раз офигиваю от этого. приятно, спасибо
на самом деле я бы рад продолжить проект, только как всегда времени нет. если оно и случиться - оно будет консольное под винду, я уже подыскиваю примерчики по этому поводу, как сделать то или иное.
ну и так что бы ВСЕМОЧЕНЬНАДА я не ощущаю, потому и не дергаюсь. главное что есть альтернатива и здоровая конкуренция ;) фору так сказать даю. и вообще, горд за нижний новгород - законодатель мод в обработке спектрумовских файлов :D
рад за вас, что собрались в одном месте, примите и меня :rolleyes:
исходники закрыл оттого, что находятся много всякого народу, который начинает учить меня программировать в высокомерном тоне, мне это не нравится и я решил избавится от этого вот таким вот способом, уж обезсутьте. да и надо ли кому исходники борланд паскаля студента первого курса, который этот борланд паскаль на первом курсе и увидел?
ЗЫ. кстати, в процессе ознакомления с контентом первое на что наткнулся, так на тему http://zx.pk.ru/showthread.php?t=5 и фразу:
Еще спрашивает!!!
Да я без них жить не могу!!!
Всяческие Спектрум-нафигаторы отпадают как класс.
был приятно удивлен.
неа, конкурировать не с чем :)Цитата:
Сообщение от RomanRom2
и эта... неужели ничего нового не появилось?
А то высоко сижу - далеко гляжу... ;)Цитата:
Сообщение от RomanRom2
Еще раз прошу у тебя извинения за то что похрючил твой паскаль и твой борланд, чтобы он на моей П4-2800 работал без runtime error... ну и задержки конечно пришлось поправить немного :DЦитата:
Сообщение от RomanRom2
С исходниками было бы попроще но что ж делать, на письма ты мне не отвечал...
По любому рад видеть!
вероятно я их и не получал...
ну так похрючил так похрючил, жалко чтоль :)
на самом деле кому надо -- исходники подарю. только бы вот щас не началось фидошное "и мнее, и мнее" :)
И мнеее... шучу :DЦитата:
Сообщение от RomanRom2
Реальщиков не так много, но те кого я знаю по Москве (включая меня) пользуются твоими прогами ну еще теледиском и хобетой35.
неа... хотя были плагины для тоталаЦитата:
Сообщение от RomanRom2
Ага я тоже под винду мыслю, токо драйвак надо писать чтобы до портов добраться.
Я вот к старой версии (для которой исходники есть) прикрутил поддержку ZXZIP, теперь внешний zxzip не нужен, SN сам всё распаковывает.Цитата:
Сообщение от RomanRom2
Кидай их прямо сюда, кому надо - подберут.Цитата:
Сообщение от RomanRom2
извини, тезка, не хотел обидеть.Цитата:
Сообщение от RomanRom2
Я просто имелл ввиду, что не нужны дополнитульные утилиты..
А то, что законодатель мод - это "де факто".
Кстати, это именно мы когда-то подкинули тебе наши сорцы для работы с реальными дисками.
да я и не обиделся :) кто сказал что я обиделся?
да, сорцов кто только мне не кидал, давно это было, я уж и не помню. даже пауль павлов дал мне исходники ADM Copier...
один фиг я свои в итоге написал, взяв за основу те, что прислал мне миха орехов, который ком загрузчик на асме написал.
Привет! Разобрался как под XP иметь прямой доступ к портам? Я вроде, нашел пару программ, которые позволяют это делать. Или это fake - не знаю даже ...Цитата:
Сообщение от RomanRom2
футы нуты, смотри ка, кто тут у нас! :)))
я совершенно точно знаю, что попасть в нулевое кольцо защиты виндов можно. у меня были где то даже сорцы, и для 95(9х) и для НТ. только я их не пробовал, аккуратненько сложил куда-то, куда именно - конечно же благополучно забыл.
надо п поискать еще...
ЗЫ. а почему в сообщении нельзя поставить более 4 смайликов? я понимаю, что это политика/религия такая :) но почему четырех?
вот пример, как прочитать MSR из ring0. порты аналогично.
Код:#pragma pack(1)
struct CALLGATE_DESCRIPTOR
{
WORD Offset_0_15;
WORD Selector;
union {
struct {
WORD ParamCount : 5;
WORD Unused : 3;
WORD Type : 4;
WORD System : 1;
WORD DPL : 2;
WORD Present : 1;
};
WORD misc;
};
WORD Offset_16_31;
};
typedef struct CALLGATE_DESCRIPTOR GDT_DESCRIPTOR;
struct GDTR
{
WORD wGDTLimit;
DWORD dwGDTBase;
};
#pragma pack()
unsigned gdt_index = 0;
HANDLE hSection;
GDT_DESCRIPTOR *pGDTDescriptor;
unsigned r0_p1, r0_p2;
DWORD __inline QuasiMmGetPhysicalAddress(DWORD va) {
// only for NT and for 0x80000000 <= va <= 0xA0000000
return (va & 0x1FFFF000); // physical address (page aligned)
}
DWORD ring0(void *func, DWORD param1, void *param2 = 0)
{
if (!func && !gdt_index) return 1;
if (!gdt_index) { // try to allocate GDT entry
struct GDTR gdtr;
__asm sgdt [gdtr]
pGDTDescriptor = (GDT_DESCRIPTOR*)gdtr.dwGDTBase;
if (!running9x) { // map physical memory
if (!nt_imports() || !advapi32_imports()) return 0;
UNICODE_STRING PhMem;
_RtlInitUnicodeString(&PhMem, L"\\Device\\PhysicalMemory");
OBJECT_ATTRIBUTES oa = { sizeof oa, 0, &PhMem, OBJ_CASE_INSENSITIVE };
int r = _NtOpenSection(&hSection, SECTION_MAP_WRITE, &oa);
if (r) {
r = _NtOpenSection(&hSection, READ_CONTROL | WRITE_DAC, &oa);
if (r) { printerr1(_RtlNtStatusToDosError(r), "can't open PhysicalMemory"); return 0; }
r = _SetSecurityInfo(hSection, SE_KERNEL_OBJECT, DACL_SECURITY_INFORMATION,
0, 0, 0, 0); // this will give access to everyone!
if (r) { printerr1(r, "can't SetSecurityInfo for PhysicalMemory"); return 0; }
CloseHandle(hSection);
r = _NtOpenSection(&hSection, SECTION_MAP_WRITE, &oa);
if (r) { printerr1(_RtlNtStatusToDosError(r), "can't open section"); return 0; }
}
DWORD offset = gdtr.dwGDTBase & 0x0FFF;
pGDTDescriptor = (GDT_DESCRIPTOR*)MapViewOfFile(hSection, SECTION_MAP_WRITE, 0,
QuasiMmGetPhysicalAddress(gdtr.dwGDTBase),
align(gdtr.wGDTLimit + offset, 0x1000));
if (!pGDTDescriptor) { printerr("MapViewOfFile()"); return 0; }
pGDTDescriptor = (GDT_DESCRIPTOR*)((char*)pGDTDescriptor + (gdtr.dwGDTBase & 0x0FFF));
}
// create callgate
for (int index = 1; index < gdtr.wGDTLimit/8; index++)
if (!pGDTDescriptor[index].misc) {
gdt_index = index;
#define pCallgate pGDTDescriptor[index]
pCallgate.misc = 0xEC00;
pCallgate.Selector = running9x ? 0x28 : 0x08;
#undef pCallgate
break;
}
}
if (!gdt_index) { printf("can't find free GDT entry\n"); return 0; }
if (func) {
WORD callgate[3];
callgate[2] = (gdt_index << 3) | 3;
#define pCallgate pGDTDescriptor[gdt_index]
pCallgate.Offset_0_15 = LOWORD(func);
pCallgate.Offset_16_31 = HIWORD(func);
#undef pCallgate
*(volatile unsigned*)func; // pagein! system hangs,if function not in RAM
*(volatile unsigned*)((int)func+0x1000);
__asm pushad
__asm push ebp
__asm mov eax, [param1]
__asm mov ecx, [param2]
__asm call fword ptr [callgate]
__asm pop ebp
__asm mov [param1], eax
__asm mov [r0_p1], ecx
__asm mov [r0_p2], edx
__asm popad
return param1;
} else { // delete callgate at gdt_index
*(unsigned*)&pGDTDescriptor[gdt_index] =
*(unsigned*)((char*)&pGDTDescriptor[gdt_index]+4) = 0;
if (!running9x) {
UnmapViewOfFile(pGDTDescriptor);
CloseHandle(hSection);
}
gdt_index = 0;
return 1;
}
}
__declspec(naked) void readMSR_r0(unsigned index)
{
__asm mov ecx, eax
__asm rdmsr
__asm retf
}
unsigned readMSR_DWORD(unsigned index)
{
unsigned res = ring0(readMSR_r0, index);
ring0(0,0); // заделываем дырку назад. это можно сделать перед окончанием операции с ring0
return res;
}
Не так давно наткнулся на утилиту OmniFlop (http://www.8bs.com/othrdnld/utilitie...p/OmniFlop.htm) предназначенную для чтения дискет нестандартных форматов и поддерживающую NT-системы. Вместе с ней поставляется свой WDM драйвер дисковода. Программа умеет читать все виды дискет кроме TR-DOS :). Но там есть анализатор формата, так что она может прочитать всё. Но! Для чтения дискет не-DOS нужна бесплатная регистрация :( Я уже отправил письмо, но пока не получал ответа :(.Цитата:
Сообщение от RomanRom2
Насчёт этого драйвер флоппи. С ним доступ в винде к дискетам осуществляется как-то очень странно - голова ёрзает по сто раз для того, чтобы прочитать файл. Также попробовал досовские утилиты для форматирования/чтения спековских дискет - вроде низкоуровневый доступ даётся, но они ничего не могут прочитать, пишут, что плохой сектор или ещё что-нить. А как у вас? У меня Win2k SP4.
пашет и на 9x, надо running9x=1, а _RtlInitUnicodeString,_NtOpenSection,_SetSecurityI nfo - указатели на соответствующие функции, беруться GetProcAddress'ом - не импортировать. если NT-only, то подчеркивание можно безболезненно стереть
Уважаемые программисты под win. Может все же кто-нибудь переделает SN под Win Xp?
А смысл?
А чем ZX плагины для FAR не подходят ?Цитата:
Сообщение от axor
А разве в FAR-плагинах уже появилась запись на реальные дискеты?Цитата:
Сообщение от Alexandr Medvedev
Вот, вот. Крайне необходима запись на реальные дискеты под XP. RealSpectrum, конечно, пока единственный вариант, но хотелось бы еще и удобство коммандера.Цитата:
Сообщение от nyuk
а это ты лично у Саши Медведева спроси :) у него есть...Цитата:
Сообщение от nyuk
Лично спрашивать не обязательно, через пару дней выложу на форум 3 утилиты (работают через ком. строку): форматировалку, читалку в .trd и писалку .trd на диск. А пока скачайте и установите драйвер для FDC (если его не устанавливали вместе с RealSpectrum'ом) http://www.ramsoft.bbk.org/emul/FdInstall.exe .Цитата:
Сообщение от elf/2
У меня в свою очередь есть вопрос. Как в Win NT определить тип дисководов A и B (5.25 3.5 или вообще отсутствует) ?
А плагины пока не дописаны т.к. не сделана проверка наличия дисководов, и их типов.
Ждём утилит!!!
У меня тут как раз много реалок для перегонки собралось
GetDriveType - должен быть DRIVE_REMOVABLE, потом DeviceIoControl - IOCTL_STORAGE_GET_MEDIA_TYPES - на моём флопике возвращается 2 допуcтимых типа: 3,5" 1.44 и 3.5" 720Цитата:
Сообщение от Alexandr Medvedev
В общем будем надеяться, что совместными усилиями появятся нормальные утилиты для работы с реальными дискетами под XP...
привет, парни. я гляжу у вас успехи в программировании контроллера под NT. это гуд.
а меня тут на DiHalt позвали, а я и загянул по всем известным мне zx ресурсам... обязательно прийду :)
А плагинов к Far`у так и нет?
более того, боюсь что и не будет. Саша Медведев уже давно на форуме не появлялся :(Цитата:
Сообщение от axor
Собственно ты сам начальник :).Цитата:
Сообщение от elf/2
Если мне не изменяет зрение - то ты модератор этой ветки :cool:
ой! и правда я сам такое могу :)Цитата:
Сообщение от CHRV
отправил весь флейм куда и положено