Legutóbbi hozzászólások

Oldalak: 1 ... 8 9 [10]
91
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta VaszicsApoca Dátum 2016. Március 22. - 09:36:45 »
Itt küldök egy mini megvalósítást, van ami 100%-s van amit időnként nem értek, hogy miért nem műxik, de  Én csak mérnők-közgazdász vagyok és amatőr programozgató. Viszont sikerült megoldani DOS parancsból a paraméterek beolvasását és átalakítását. Kettő Szakirodalmat használtam - Programmers CPM Handbook by Andy Johnson-Laird.pdf és Z80 Assembly Language Subroutines (1983)(Lance A Leventhal)(Osborne).pdf. A változók a 07FF0H-tól helyeztem le, valami miatt, ha a elejére tettem nem akarta "munkát". A hibákat szerintem azonnal ki fogod szúrni, vagy egyszerűbben lehet egyes dolgokat megoldani. Kíváncsi vagyok a véleményedre és javaslatodra. Igazából turbo Pascalban szeretném -Szekfű András - CSMLOGO-ját átírni, amit egyszer már TVC-BASIC-re még 1989 körül adaptáltam, kisebb-nagyobb sikerrel... Elvileg a vonalhúzó részek a "Bresenham's line algorithm"-t használják, a legtöbb hasznos eljárást, ötletet a "www.cirsovius.de/" oldalon találtam...
Használat DOS promptban:

Koordináta rendszer: bal felső sarok a 0,0 és jobb alsó sarok a 512,240

toll letétel  - pendown
     felvétel - penup

plot oszlop, sor, 0 - rajzol
                          1 - törli
                          2 - complement
                          3 - xor

line oszlop1, sor1, oszlop2, sor2, 0 - rajzol
                                                     1 - törli
                                                     2 - complement
                                                     3 - xor

Draw oszlop, sor, 0 - rajzol ( az előző letett pontól vonalat húz, vagy töröl)
                          1 - törli
                          2 - complement
                          3 - xor

RAD szög (0-360, vagy több, pl. RAD 125 )

Right                 Jobbra 90 fok
Left                   Balra    90 fok a meglévő fokhoz hozzáadva

Forward hossz pl. Forward 100 - az előző ponttól 100 egység, az adott (RAD, vagy left, right) szögben

Circle oszlop, sor, rádiusz, mode = 0, 1, 2, 3
92
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta szaboatis Dátum 2016. Március 21. - 21:50:48 »
Tartok tőle, hogy a VT-DOS-ban ez nem megy. Sem if-then, sem goto, sem for ciklus nem szerepel a "VT-DOS operációs rendszer" c. könyvben. Keresgéltem, úgy látom, a CP/M sem tud ilyet. Ilyen szempontból az MS-DOS már fejlettebb volt. Miért így szeretnéd megoldani?

A ZCN-t még régebben letöltöttem, fel is fogom használni forrásnak. A célom több kisebb modul:
Egy az alapvető grafikus funkcióknak (video page ki/be lapozás; üzemmódváltás 2,4,16 szín; paletta-,  tinta- és keretszín kezelés, képrnyőtörlés stb)
Erre épülne rá egy karakteres megjelenítő mód, természetesen mindhárom üzemmódban (karakterdefiniálás, szövegkiírás olyasmi, mint a BASIC-ben a SET CHARACTER és PRINT AT)
Ráépülne még a grafikus rajzoló mód (PLOT és társai, mindhárom grafikus módban)
Illetve ezektől függetlenül szeretnék még valami mini játék-motor félét összehozni.
93
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta VaszicsApoca Dátum 2016. Március 21. - 14:22:04 »
Korábban feltettem az "assembly_C_Dosban.zip" csomagot ebben volt a MESCC is, most a másikra gondolok a ZCN könyvtárban levőkre. A graph.z -ben ott vannak a rutinok gépi kódban annál a pset-nél egyszerűbbet nem találtam és csak a TVC sajátosságait kellett megadni (511 vagy 512, 239 vagy 240, 8000h képernyő kezdete, jeleztem is a forráskódnál). A másik CPM_emu_Win.zip csomagban benne van a teljes forrás kód is, Linux alatt nem tudom mennyire használható. Nekem sikerült összeszedni és TVC-DOS-ra alkalmazni most már gyors körrajzolót, vonalhúzót assemblyben, Turbo Pascalban és MESCC C-ben is, de a gépi kódot sikerült beilleszteni SBASIC-be. Most egy Mini Turtle grafikán "dolgozom" TVC-DOS parancsban, vagy bath file-ben. Nem tudom lehet-e TVC-DOS bath file-ben címkézni (goto), if-then-else-ni, valami ciklust szervezni, mint az MS-DOS bath-nél.
94
TVC Emulátorok / TVC emulátorok használata Linux alatt
« Utolsó üzenet: írta szaboatis Dátum 2016. Március 19. - 17:16:36 »
Sziasztok!

Nem tudom, más próbálkozott-e már valamelyik emulátorral Linux alatt? Wine-nal sikerült futtatnom a WinTVC-t és a PCZ80TVC-t is kisebb-nagyobb problémákkal. Az ezzel kapcsolatos tapasztalataimat szeretném itt megosztani.
95
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta szaboatis Dátum 2016. Március 19. - 17:11:55 »
Játszottam pár kört a játékkal :-). Ötletes programokat írtak anno karakteres üzemmódra. Gratulálok a TVC-re portoláshoz! Tovább próbálgattam a MESCC-t, szimpatikus, jól használhatónak tűnik. Elkezdtem benne TVC-re grafikát programozni. Persze a fordítást célszerű CP/M emulátorban vagy a WinTVC "turbó" üzemmódjában végezni. Jól működik az a CP/M emu amit megosztottál. Nagy előnye, hogy közvetlenül a fájlrendszerből dolgozik nem disc image fájlból, így a lefordított fájlok WinTVC image-be juttatása egy kicsit egyszerűbb. Találtam egy jó Z80 emulátort, ami CP/M-et futtat és szintén tud a fájlrendszerből dolgozni: http://www.mathematik.uni-ulm.de/users/ag/yaze-ag/
Ráadásul Linux/Unix alapú rendszerekhez készült, én meg többnyire Linux-ot használok. LinuxMint alatt sikerült lefordítanom, ismerkedem vele. Nem tudom, van-e más rajtam kívül itt a fórumon, aki Linux alatt futtat TVC emulátort. Nyitni szeretnék majd egy új témát a Linuxos tapasztalataimról.
96
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta VaszicsApoca Dátum 2016. Március 11. - 17:07:59 »
A Blocks játékban néhány helyen (képernyő szekvenciák és a 80/64 miatt) kellett csak módosítani és lehet vele játszani. Értelemszerűen nyíl-botkormány, S-select, K- kill, X -exit, ha valakit érdekel...  (csatolva a forráskód is, C-ben)
97
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta VaszicsApoca Dátum 2016. Március 10. - 14:06:30 »
Működik nagyobb file-al is, blocks.c - 15963, blocks.zsm - 64640, blocks.prn 135936, blocks.hex 24704 és a blocks.com 10240 csak a nagy prn file miatt vigyázni kell legyen elég hely a lemezen... egyébként köszi! 
98
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta VaszicsApoca Dátum 2016. Március 10. - 12:47:09 »
A két rendeszer közötti különbség, a zöld a VT_DOS, a ciánszínű a UPM (CP/M) ez nagyobb szabad területű...
99
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta szaboatis Dátum 2016. Március 10. - 12:36:47 »
Köszönöm, lementem a gyűjteményembe. Közben már újrafordítottam CP/M emu alatt, kicsit módosítva a MESCC-t.
c_main.h STRBUF_SIZ=9216 -> STRBUF_SIZ=8704 (36 db 256 byte-os sorpufferből lett 34 soros)
c_main.c GLB_NUM=450 -> GLB_NUM=400
c_main.c GLBTAB_SIZ=7650 -> GLBTAB_SIZ=6800 (450db 17 byte-os bejegyzés helyett 400 db-os)

Ezzel kicsit csökkent a sorfeldolgozó puffer mérete és a globális változók tárolására szánt hely, cserébe fut már a WinTVC-ben.
A cc.com mérete 48512 byte lett, már sikeresen lefordítottam vele egy "Hello world!" programot.

Igazad van, érdemesebb CP/M emulátorban fordítani. Az első kis próbámat is elég sokáig tartott lefordítani WinTVC-ben.
Csatoltam a módosított forrásfájlokat és az új cc.com-ot.
100
TVC Programozás / Re:DOS Programok
« Utolsó üzenet: írta VaszicsApoca Dátum 2016. Március 10. - 12:16:00 »
CP/M alatt ezt az SBASIC-s promramot találtam, megmutatja a rendszer jellemzőket...
Oldalak: 1 ... 8 9 [10]