Jump to content

Recommended Posts

21 uur geleden, blanka zei:

Weet iemand hoe je het laatste bestand op een bandje kunt wissen? Kan daar niks over vinden. Is soms nodig om de boel te herschikken.

 

Je hebt meen ik eens in een post gezet dat je "het zwarte boekje" erbij hebt. Desondanks loont 't de moeite de PDF te downloaden en door te bladeren (te vinden op github.com/p2000t en download.homecomputer.museum).

 

In de andere PDF's kom je ook nogal wat wetenswaardigheden tegen...

 

Link to post
Share on other sites
  • Replies 688
  • Created
  • Last Reply

Top Posters In This Topic

In dat zwarte boekje staat er niks over. Wel lees ik in de nieuwsbrieven dat de monitorroutines er handelingen voor bevatten, maar dan heb ik een rijtje pokes nodig. Bijvoorbeeld 20 blokken voorruit spoelen en dan een einde markering op de band plaatsen.

Link to post
Share on other sites

Volgens mij refereert @cancom naar een handgeschreven opmerking op pagina 34: van https://download.homecomputer.museum/Files/Philips/P2000T/Documentation/P2000T.pdf. (zie afbeelding)

 

De monitorroutines werken natuurlijk ook. Als je het vervelend vindt om een serie 'pokes' in BASIC uit te voeren kun je ook de instructies via Zemon inkloppen en eventueel de machinetaalinstructies op een (ander) bandje opslaan.

 

Tenslotte heb je ook nog een "cassettehulp" programma met wat handige utilities. Ik kan me niet herinneren of die je toetstaat om specifiek het laatste bestand te wissen, maar wellicht de moeite waard om daar eens naar te kijken: https://github.com/p2000t/software/blob/master/tapes/utilities/Cassettehulp%2B.cas

 

screenshot_p2000t_zwarte_boekje.jpg

Link to post
Share on other sites

Klopt, maar er zou ook een EOT geschreven moeten worden op de cassette. Heb je het stopje erin zitten?

 

Uitleg:

Op adres 0x0018 begint de machinecode voor de cassette. Via DEF USR=&H18 wordt een pointer gezet naar dat adres. Wanneer je ?USR(1.1) aanroept dan wordt 1.1 als een single precision float weggeschreven naar adres 0x650D en bevat HL een referentie naar dat adres. We gebruiken dit getal overigens verder niet (HL wordt overschreven met de waarde van het transfer adres). De waarde in de accumulator wordt echter wel bepaald door het type argument en voor een single precision float is dat een 4. Wanneer 0x0018 aangeroepen wordt met 4 in register A, dan wordt het vijfde adres (tellen vanaf 0) van de cassette jump table aangeroepen die wijst naar de EOT-schrijf functie die je nodig hebt.

 

Zie ook de volgende regels in de monitor code:

* Effect van waarde in a: https://github.com/p2000t/documentation/blob/master/programming/Monitor Documented Disassembly/Symbols.asm#L212

* Effect van waarde in register A op de jump table: https://github.com/p2000t/documentation/blob/master/programming/Monitor Documented Disassembly/Cassette.asm#L28
* Start van de EOT schrijf functie: https://github.com/p2000t/documentation/blob/master/programming/Monitor Documented Disassembly/Cassette.asm#L1707

Link to post
Share on other sites
Op 23-8-2023 om 14:18, Bekkie zei:

De mame emulator is erg goed. Ik ben in de corona tijd begonnen functionaliteit toe te voegen. Zoals 80 karakterkaart, floppy controller en Hireskaart alsmede een aantal insteek modules. Ik loop aan tegen het (terecht) strenge review process van het mame-dev team en nog geen tijd gehad alle commentaar te verwerken. Staat nog op de planning.

 

Hier een demo van de mame in actie met mijn uitbereidingen:  (Voor wie wil kan ik de executables delen via een DM)

   

Ik kan je helaas geen DM sturen. Zou je me uit kunnen leggen hoe ik deze mame-emulator draaiende kan krijgen?

Link to post
Share on other sites
On 8/23/2023 at 2:18 PM, Bekkie said:

De mame emulator is erg goed. Ik ben in de corona tijd begonnen functionaliteit toe te voegen. Zoals 80 karakterkaart, floppy controller en Hireskaart alsmede een aantal insteek modules. Ik loop aan tegen het (terecht) strenge review process van het mame-dev team en nog geen tijd gehad alle commentaar te verwerken. Staat nog op de planning.

 

Ik zou dit graag eens testen op mijn Raspberry Pi 4.

Heb je toevallig de source code op je github staan ?

Link to post
Share on other sites
On 8/30/2023 at 10:53 AM, Hawker17 said:

Ik kan je helaas geen DM sturen. Zou je me uit kunnen leggen hoe ik deze mame-emulator draaiende kan krijgen?

Hier staan de Windows executables met meerdere start batch files. (geeft verschillende P2000T configuraties)

https://files.eversdijk.com/P2000T-mame.zip

Edited by Bekkie
Link to post
Share on other sites
11 hours ago, blanka said:

Ik snap nog niet hoe ik een gewone T met een .CAS start. Daar zit geen bat file voor bijgevoegd.


Ik heb de toegevoegde .bat files gelezen en er is inderdaad niet 1 voor cas bestanden.

Maar die kan je heel gemakkelijk zelf maken.

 

Dit is een handige pagina om eerst door te lezen als je begint met mame :

https://docs.mamedev.org/commandline/commandline-all.html

 

Met dit commando kan je je media opties listen :

mame -listmedia p2000t

 

Voor de Bekkie versie krijg je dan, zeer waarschijnlijk, de opties cass en flop te zien.

Die moet je toevoegen in je commando.

Als je wilt dan kan je er een .bat file van maken.

Dit is een voorbeeld :

mame p2000t -cass gosthunter.cas

 

Een andere manier is om alleen de p2000t driver te laden :

mame p2000t

Doormiddel van het drukken op <tab> kom je in het menu ( UI )  van mame.

Hier kan je ook handmatig cas bestanden inladen.

 

Laat je me even weten of het is gelukt met deze info ?

Succes.

 

( Developer of https://retropie.org.uk/forum/topic/29682/development-of-module-script-generator-for-lr-mess-lr-mame-and-mame-standalone )

 

 

 

Edited by folly
Link to post
Share on other sites
44 minutes ago, folly said:


Ik heb de toegevoegde .bat files gelezen en er is inderdaad niet 1 voor cas bestanden.

Maar die kan je heel gemakkelijk zelf maken.

 

Dit is een handige pagina om eerst door te lezen als je begint met mame :

https://docs.mamedev.org/commandline/commandline-all.html

 

Met dit commando kan je je media opties listen :

mame -listmedia p2000t

 

Voor de Bekkie versie krijg je dan, zeer waarschijnlijk, de opties cass en flop te zien.

Die moet je toevoegen in je commando.

Als je wilt dan kan je er een .bat file van maken.

Dit is een voorbeeld :

mame p2000t -cass gosthunter.cas

 

Een andere manier is om alleen de p2000t driver te laden :

mame p2000t

Doormiddel van het drukken op <tab> kom je in het menu ( UI )  van mame.

Hier kan je ook handmatig cas bestanden inladen.

 

Laat je me even weten of het is gelukt met deze info ?

Succes.

 

( Developer of https://retropie.org.uk/forum/topic/29682/development-of-module-script-generator-for-lr-mess-lr-mame-and-mame-standalone )

 

 

 

 

Omdat in mijn versie de ROM module ook te selecteren is, zul je die ook op moeten geven:

      mame p2000t basic -cass gosthunter.cas

 

Als je floppies wil gebruiken heb je jwsbasic nodig en een extention board met extra RAM bv de M2200 voor de MIniware of FDC voor M-versie:

  

  mame P2000T -ram 80k -ext1 m2200 jwsbasic -flop1 "roms\p2000t\disks\Spel1.dsk" 

 

Voor meer uitbereidingen zie:

     mame.exe  p2000t -listslots

    

    
   

Link to post
Share on other sites

Goed werk! Het lukt nu. Ik zie dat de bugs uit teletekst die nog in M2000 zaten weg zijn.

Enige gekke is dat als ik een cassette laad, deze meteen start. Ik dacht eerst dat toetsenbord niet werkte, maar hij begon met inladen machinecode, en dat blokkeerde invoer.

Ook zie je in het begin een overlay linksboven met een teller die van 00.11 terugloopt naar 00:00 voordat de boel begint.

Kun je de kleuren nog tweaken? ZIjn nu een beetje Philips-fosfors, maar ik ben Trinitron gewend.

Edited by blanka
Link to post
Share on other sites

Ah, ik ben erachter. Puristisch trekje van Mame: tape laden duurt zelfde als in het echt. Kan dat uit? Instant cload zeg maar?

Wel gek dat je standaard cassettefout E krijgt na opstarten.

Link to post
Share on other sites
14 hours ago, blanka said:

Ah, ik ben erachter. Puristisch trekje van Mame: tape laden duurt zelfde als in het echt. Kan dat uit? Instant cload zeg maar?

Wel gek dat je standaard cassettefout E krijgt na opstarten.

Dit is geen puristisch trekje, maar juist de filosofie achter Mame. Waar de meest emulators de software laag emuleren, emuleert Mame juist de hardware (chips) en laat de SW ongemoeid. In mijn voorbeeld filmpje draait exact dezelfde code (byte compatible) als op een echte P2000T. Voor de uitbereidingen die ik toegevoegd heb, had ik genoeg aan de schema's, Miniware was zo aardig om die destijds mee te leveren met de M2200.  Voor de andere modules (M-FDC, Hireskaart, muis module etc) kon in de schemas terugvinden in de adere documentatie die ik heb liggen.

Als je wil versnellen, doe dan hetzelfde als wat veel van ons in de jaren 80/90 ook deden. "Bouw een floppy controller in".

Gebruik daarvoor bv de volgende command line opties:

 

"mame P2000T -ram 80k -ext1 m2200 jwsbasic -flop1 "roms\p2000t\disks\Spel1.dsk"  -cass gosthunter.cas"

 

Je kan dan Gosthunt inladen en wegschijven op disk. De volgende keer laad je veel sneller (van disk)

Link to post
Share on other sites
14 hours ago, blanka said:

Er zit ook nog een fout in. Doe maar eens shift-numpad-1. Dan krijg je de tape inhoud. Die klopt niet.

Die tape emulator is inderdaad wat buggy, maar doet het meestal wel. De cassette fouten gewoon negeren. (Doe ik bij mijn echte P2000T ook).

Wellicht even contact opnemen met de ontwikkelaar van die tape-emulator. Die kun je terug vinden in de source code van dat stuk.

Link to post
Share on other sites
1 minute ago, Bekkie said:

Dit is geen puristisch trekje, maar juist de filosofie achter Mame. Waar de meest emulators de software laag emuleren, emuleert Mame juist de hardware (chips) en laat de SW ongemoeid.

Zou je dan geen .WAV moeten lezen en schrijven, en de tape-hardware mee emuleren? Ik snap het idee, maar je moet toch op een gegeven moment over naar de nieuwe techniek waarbinnen mame draait. Als een floppy ook op 80's snelheid draait is dat ook niet heel veel beter. Of mag die wel virtueel?

Link to post
Share on other sites
2 minutes ago, blanka said:

Zou je dan geen .WAV moeten lezen en schrijven, en de tape-hardware mee emuleren? Ik snap het idee, maar je moet toch op een gegeven moment over naar de nieuwe techniek waarbinnen mame draait. Als een floppy ook op 80's snelheid draait is dat ook niet heel veel beter. Of mag die wel virtueel?

Nee hoor die floppies waren in de jaren 80 al razend snel op een P2000T, vooral omdat de programma's in bytes erg klein zijn voor een P2K. Kijk maar in de Youtube film, dat is allemaal op werkelijke snelheid.

Link to post
Share on other sites
3 minutes ago, Bekkie said:

Kijk maar in de Youtube film, dat is allemaal op werkelijke snelheid.

Ik zie geen YT video op deze en de vorige pagina... Heb je een link?

Link to post
Share on other sites

  

43 minutes ago, blanka said:

Even wat zitten pennen:

https://www.retrospace.nl/Philips_P2000T_homecomputer.html

Als je iets ziet dat niet klopt, laat het even in een PB weten.

Wat een leuk stuk!

Ik vond de link met Edukaboek leuk; ik heb destijds allerlei software voor ze geschreven met de Zemon assembler die Loek en ik hadden geschreven. Ik herinner me in ieder geval een Basic achtige programmeertaal met de naam "Taal", en een zestal voorbeelden voor standaard software zoals tekstverwerkers, ieder met z'n eigen manier om dingen te doen. Die software hoorde bij leerboeken die door Edukaboek werden uitgegeven.

 

Een van de leukste projecten die ik heb gedaan was het maken van de P2000 software voor Lego Lines, een nu compleet onvindbare set aan LEGO dingen waarmee je dingen kon bouwen in LEGO en ze kon besturen met de P2000 via de software:

image.png.de51e1780cdc41bc9e0b31d0ed7a57b2.png

Ik kon nog maar een link vinden waar het beschreven is: http://www.miniland.nl/Dacta/robotica.htm

Ik ben heel lang op zoek geweest naar de Edukaboek boeken maar heb ze nooit meer kunnen vinden... Het helpt niet dat ik me ook geen enkele naam van een boek meer herinner ;)

 

Link to post
Share on other sites

Ik heb

- Basic Probeerboek van C. de Boer (Educaboek)

- Basic Notities voor de P2000T van Dr. D.J.Kroon (Educaboek)

- Hèt Computer-spelen boek van Ralph Hofman (Adison Wesley)

- Philips P2000 van Albert Sickler (Kluwer)

- INPUT blauw van C. de Boer

- INPUT rood, Nederlandse versie van Usborne guide to the Micro Computer bewerkt door C. Titulaer en J. Terlouw

- Handleiding P2000, Familiegeheugen en Tekstverwerker (die zwart met oranje boeken).

- De Eeuw van de Computer, Geschiedenis van de Informatietechnologie in Nederland

- Besturen van Robotmodellen met de Microcomputer van W. Clark. Hierin lijken van die modellen in te staan die ook op Miniland Dacta stonden. Er wordt verwezen naar Uniface voor de P2000 van the PTC.

- Z80 zakboekje van J.B.Vonk (Kluwer)

- Machinetaal voor de ZX Spectrum van W. Tang (Kluwer) ook nuttig voor P2000.

Edited by blanka
Link to post
Share on other sites
Op 7-9-2023 om 10:35, blanka zei:

Even wat zitten pennen:

https://www.retrospace.nl/Philips_P2000T_homecomputer.html

Als je iets ziet dat niet klopt, laat het even in een PB weten.

 

Frappant dat ene M. de K. het voor elkaar krijgt om zoveel jaar na dato nog steeds mensen voor de gek te houden en op te zadelen met een belachelijke/willekeurige methode met als -gelukkig niet wereldschokkend- gevolg dat er alweer sprake is van een heden ten dage vaker optredend probleem: desinformatie.

 

serial.bas:
83 POKE &H9000,&H00:POKE &H9001,&H60
84 POKE &H9002,0:POKE &H9003,1

 

De toetsbuffer godbetert...

 

Link to post
Share on other sites
21 minutes ago, cancom said:

 

Frappant dat ene M. de K. het voor elkaar krijgt om zoveel jaar na dato nog steeds mensen voor de gek te houden en op te zadelen met een belachelijke/willekeurige methode met als -gelukkig niet wereldschokkend- gevolg dat er alweer sprake is van een heden ten dage vaker optredend probleem: desinformatie.

 

serial.bas:
83 POKE &H9000,&H00:POKE &H9001,&H60
84 POKE &H9002,0:POKE &H9003,1

 

De toetsbuffer godbetert...

 

Geen idee waar je het over hebt. Leg uit....

Serial.bas doet wat het moet doen, kan zijn dat het strakker kan, dan post ik graag een verbeterde versie.

Edited by blanka
Link to post
Share on other sites

Ok:


1 block op tape bestaat uit 1064 bytes plus een paar gaps; zie desgewenst "P2000 System T & M Reference Manual.pdf", paginas 57-59.

 

Dus: je hebt je laten misleiden door die nepkogel (met zijn methode ernaast schietend) waardoor je berekening van de bits/sec uitgaat van 1280 bytes/block.

 

Stelling:
".cas" = (programma-) vervuiling-avant-la-lettre

 

Ook MESS/MAME moet telkens 256 bytes overslaan om het volgende uit te voeren programmabyte te vinden en interpreteren. Awkward, die gaten; of je een virus moet zien te ontwijken.

 

Zinniger zou zijn geweest:
83 POKE &H9000,&H30:POKE &H9001,&H60
84 POKE &H9002,32:POKE &H9003,0

 

waarbij 't volstaat dit 1 maal uit te voeren, bij voorkeur voorafgaand aan het betreffende bestand.

 

Dat in het vervolg alsnog gaan doen schiet eigenlijk ook niet (meer) op.

 

Edited by cancom
Link to post
Share on other sites

Oh die berekening is natte vingerwerk, in de berichten van Philips spraken ze over 6000baud, dus vertel hoe ze daar op uit komen.

Maar eigenlijk zeg je dus dat het .cas bestandstype nergens op slaat.

Gekke is, dat er eigenlijk maar 32 bytes nodig zijn voor de structuur: in Marcels structuur byte 48-79. Als je de andere 224bytes op 00 zet, verandert er niks aan de werking. Maar gek genoeg staat er wel wat in. Komt dat uit de hoge hoed?

Het wordt tijd om eens met een memorecorder naar de werkelijke "geluiden" op de tape te kijken.

 

Maar doe eens gek, en herschrijf serial.bas zodat we een goed formaat uploaden naar de computer, en maak meteen de omgekeerde, zodat we een hele tape kunnen maken van een RS232 stroom, i.p.v. nu één bas file per keer die je dan netjes achter elkaar moet csaven om ongeveer de tape te kunnen klonen. We zijn u eeuwig dankbaar! Mijn Z80 kaas is nog niet te eten.

Edited by blanka
Link to post
Share on other sites
23 uur geleden, Hawker17 zei:

Hartelijk dank! Ik krijg alleen een foutmelding: Versie bestand niet compatibel met Windows-versie. Werkt dit alleen op 64-bit systemen?

Ja, het is een 64 bits executable.

Link to post
Share on other sites
Op 7-9-2023 om 11:27, fjalvingh zei:

  

Wat een leuk stuk!

Ik vond de link met Edukaboek leuk; ik heb destijds allerlei software voor ze geschreven met de Zemon assembler die Loek en ik hadden geschreven. Ik herinner me in ieder geval een Basic achtige programmeertaal met de naam "Taal", en een zestal voorbeelden voor standaard software zoals tekstverwerkers, ieder met z'n eigen manier om dingen te doen. Die software hoorde bij leerboeken die door Edukaboek werden uitgegeven.

 

Een van de leukste projecten die ik heb gedaan was het maken van de P2000 software voor Lego Lines, een nu compleet onvindbare set aan LEGO dingen waarmee je dingen kon bouwen in LEGO en ze kon besturen met de P2000 via de software:

image.png.de51e1780cdc41bc9e0b31d0ed7a57b2.png

Ik kon nog maar een link vinden waar het beschreven is: http://www.miniland.nl/Dacta/robotica.htm

Ik ben heel lang op zoek geweest naar de Edukaboek boeken maar heb ze nooit meer kunnen vinden... Het helpt niet dat ik me ook geen enkele naam van een boek meer herinner ;)

 

Philips had zelfs een spraakmodule voor de P2000. Mijn vader werkte vroeger bij Philips en wij zaten altijd dicht bij het vuur. Helaas veel in een opruimwoede verkocht voor een veel te lage prijs.

Edited by Hawker17
Link to post
Share on other sites

Nu ben ik er dus eindelijk zeker van dat er een robotarm was voor de P2000! 

Wel gezien toen ik klein was, maar had niet in de gaten dat het van lego was. 

Link to post
Share on other sites
  • 2 weeks later...
On 8/21/2023 at 9:29 PM, w2510a said:

Hello everybody! I am sorry to post in English, but I am from Austria and can't write in Dutch.
My interest in computers started in school 35 years ago. Since 25 years I am collecting and repairing historic computers. My collection also includes a number of Philips P2000 (several P2000T, one P2000M and two P2000C). All of them are working and I have some software as well. However, I don't have a CPM cartridge for the P2000T and would be interested to get a "Homebrew cartridge module" as developed/offered by @Bertus here some time ago. Is there still a possibility to get such a module?

 

@w2510a had nog een aantal cartridges die nog niet in het P2000 Preservation Project stonden. Hij was zo vriendelijk om een dumpje van de ontbrekende cartridges te maken welke ik nu via een pull-request heb aangeboden voor het project. Zodra @dionoid de pull request (PR) accepteert (indien naar tevredenheid natuurlijk), dan zijn op de PPP de volgende extra cartridges te vinden:

  • BASIC 1.0 in het Engels
  • Bildschirmtext
  • Text 1 in het Duits
  • Text 2 in het Duits
  • Maintenance (deze maintenance wijkt met een paar bytes af van "Maintenance 1", dus ik heb hem maar voor de volledigheid toegevoegd)

In de tussentijd kunnen de nieuwe cartridges in mijn fork gevonden worden (na acceptatie van de PR verwijder ik deze tekst)

https://github.com/ifilot/p2000t-software/tree/additional-cartriges/cartridges

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...