-
Aantal items
170 -
Registratiedatum
-
Laatst bezocht
Inhoudstype
Profielen
Forums
Galerij
Kalender
Alles dat geplaatst werd door dionoid
-
Hoe je files vanaf de PC naar je P2000T krijgt, is hier beschreven: https://github.com/p2000t/software/tree/master/utilities/pc2p2000t Laat me maar weten als sommige dingen onduidelijk zijn beschreven, dan kan ik ze verbeteren.
-
Voor als je de P-toets niet aan de praat krijgt, dan staat er momenteel op marktplaats een los P2000T toetsenbord te koop: https://www.marktplaats.nl/v/computers-en-software/vintage-computers/m2074785163-philips-p2000t-toetsenbord Het is uiteraard nog maar de vraag of dat toetsenbord wel goed werkt, maar misschien kan de verkoper daar iets over zeggen.
-
De cassette foutcode wordt gezet door de interne Monitor routine (op &H0018) die de aansturing van de cassetterecorder afhandelt, maar het checken op een eventuele foutcode (waarde in &H6017 <> 0) gebeurt bij de Dumper niet in machinetaal, maar in Basic. In Cassette Dumper.bas gebeurt dat in regel 82, vlak na het lezen van een blok data van cassette en vlak voordat die data naar de seriële poort wordt gestuurd. Daar zou je een aanpassing kunnen maken in de Basic code die in geval van foutcode 77 ("M") niet eruit springt, maar gewoon verder gaat. Wel is de kans groot dat de daarna gelezen blokken niet meer een volledige file bevatten, dus je moet wel snappen of (en hoe) je e.e.a. kan repareren met een binaire editor. Voor de meer geavanceerde cassette dumpers onder ons, dus
-
De 9600 baud versie van SERIAL.BAS is hernoemd naar "Cassette Dumper.bas" en de code is hier te zien. Als je pc2p2000t.bas gebruikt, dan kun je de Cassette Dumper ook als .cas bestand naar je P2000T overzetten. Scheelt weer overtikken. Het .cas bestand met daarop Cassette Dumper.bas is hier te downloaden. Ik heb zojuist de tijd gemeten met één zijde van een tape (41 blokken) en dat duurde 2:40 met de 9600 baud versie. Dus een volledige tape dumpen duurt nu nog maar de helft van de tijd.
-
Dat is nu al mogelijk in SERIAL.BAS. Zoek de regel met POKE &H9100,0 (waarschijnlijk regel 79) en verander dat naar POKE &H9100,1 Dat is ook al mogelijk in SERIAL.BAS, door regel 82 aan te passen; daar wordt namelijk na het lezen van ieder cassette blok de foutcode uit &H6017 gecheckt. Dat zou je kunnen aanpassen zodat ie gewoon doorgaat als de foutcode 77 (= No start mark found / EOT) is. Maar waarom zou je die EOT markers willen negeren?
-
Ja, het dumpen van een cassette gaat straks inderdaad een stuk sneller. SERIAL.BAS werkt ongeveer zo: het leest iedere keer een "blok" data (32 bytes header + 1024 bytes data) vanaf cassette en stuurt die data direct daarna via de P2000T's seriële poort naar de PC, waarna het weer de volgende blok data van cassette leest en verstuurt. Dat versturen gaat nu nog met 2400 baud, maar straks dus met 9600 baud. Het inlezen van de cassette zelf is niet gewijzigd, dus dat gaat niet voor meer (of minder) leesfouten zorgen. Zwaar lopende of beschadigde tapes zijn inderdaad een risico, vandaar dat het zaak is om zoveel mogelijk tapes (nu het nog kan) te dumpen naar .cas bestanden op de PC. Goed dat je daarmee helpt!
-
Wat mij betreft blijft .cas gewoon de standaard. Dat formaat is inmiddels relatief wijd verspreid en converteren tussen .cas en .p2000t dumps is heel eenvoudig. Helaas bevat het .cas formaat onnodige bytes in iedere blok-header; dat is een erfenis die we hebben meegekregen. Ik neem aan dat hij dat wel wist, want in de cassette-routines van M2000 leest en schrijft hij precies de juiste 32 bytes naar adres &H6030; de andere 224 bytes worden genegeerd. Ik heb sinds kort contact met Marcel, dus ik zal hem eens vragen of hij zich nog herinnert waarom de dumps te veel bytes voor de header gebruikten. Momenteel ben ik een nieuwe versie van de SERIAL.BAS dump-utility aan het testen, die met 9600 bps verstuurt i.p.v. 2400 bps. Daarmee wordt het dumpen van een tweezijdige cassette bijna 5,5 minuut (328 seconden) sneller. Rekensom: voor twee zijden van een cassette worden in het .cas formaat maximaal 2 * 41 (blokken) * 1280 (256+1024) bytes = 104.960 bytes verzonden. Dat zijn 1.049.600 bits (want RS-232 stuurt 1 start bit, 8 data bits en 1 stop bit). Met 2400 bps kost dat 437 seconden, maar met 9600 bps slechts 109 seconden. De tijdsbesparing is dus 437-109 = 328 seconden per volle cassette.
-
Volgens mijn berekening scheelt het iets minder: .cas heeft 224 onnodige bytes per blok x 41 blokken per zijde x 2 zijden = 18.368 onnodig verzonden bytes per bandje RS-232 is ingesteld met 8 data bits, 1 start- en 1 stop-bit, dus in totaal 18.368 bytes x 10 bits per data byte = 183.680 onnodig verzonden bits Het dumpen gaat met 2400 bps, dus je verspilt 183.680 / 2400 = "maar" 76,5 seconden. En als je veel bandjes dumpt, dan loopt het idd aardig op. 😛
-
De send_p2000t_cas.py utility is nu aangepast zodat ook .p2000t files worden ondersteund. Voor degenen die geen idee hebben wat .p2000t files zijn: het zijn P2000T cassette dump bestanden die zijn opgedeeld in blokken van 1056 bytes (32 bytes header + 1024 bytes data), wat in lijn is met hoe de data records op cassette zijn opgeslagen. Dit in tegenstelling tot .cas dump bestanden, die blokken gebruiken van 1280 bytes (256 bytes header + 1024 bytes data), waarbij de header 224 onnodige bytes bevat. De M2000 emulator ondersteunt het .p2000t formaat (naast het .cas formaat) sinds versie 0.8.
-
Voor degenen zoals @blanka die een ongesplitst .cas bestand (bijv. ErrorSoft.cas) in één keer willen terugzetten naar een echte P2000T cassette, heb ik nu een Python tooltje gemaakt die daarmee helpt. Wel heb je hiervoor de nieuwe 0.3 versie van Pc2P2000T nodig, die een "ontvang-bewaar" modus heeft. Alles staat beschreven in de README: https://github.com/p2000t/software/tree/master/utilities/pc2p2000t#ontvang-bewaar-modus Mocht je al een oudere versie van Pc2P2000T hebben en je hebt geen zin om de nieuwe versie over te tikken, dan kun je hier de .cas van de nieuwste Pc2P000T downloaden en naar je P2000T overzetten m.b.v. de oudere versie.
-
Het zou een probleem met de voeding kunnen zijn, die net te weinig stroom geeft aan het moederbord, waardoor je vreemde effecten krijgt. Als je een goed werkende P2000 hebt, dan zou je die ernaast kunnen zetten en dan de kabels vanaf het voedings-bord kunnen verleggen naar de de andere voeding. (ik denk maar even hardop)
-
Ja, dat heb ik geprobeerd, maar geen van de oude CH340 drivers kreeg ik meer stabiel aan de praat. Uiteindelijk heb ik deze FTDI adapter kabel gekocht op Amazon, die op Windows 11 inderdaad werkt zonder extra drivers te hoeven installeren.
-
!! OPROEP VOOR .CAS BESTANDEN !! Een paar jaar geleden heb ik de "P2000T Software Preservation" repository op Github aangemaakt met als doel om zoveel mogelijk P2000T software (zowel op cassette als cartridge) te verzamelen voordat het verloren gaat. Dus mocht je dumps hebben gemaakt van je cassettes, schroom dan niet om ze aan mij te sturen, zodat ik ze op Github kan zetten. Want zoals ze in de US zeggen: "Sharing is Caring" (braak) Wil je weten hoe je dumps van je P2000T cassettes maakt? Lees dit: https://github.com/p2000t/software/tree/master/utilities/tapeconv !! EINDE OPROEP !!
-
Ik heb het helemaal gehad met die goedkope adapters met CH340 chipset. Waarschijnlijk heb ik een fake CH340 chip, waarmee de Windows drivers niet stabiel werken - verzenden gaat maar 1 keer goed en daarna moet ik Windows rebooten om het weer werkend te krijgen. Ik heb zojuist een kabel met (hopelijk echte) FTDI chip besteld voor €12 by Amazon, dus ik ben benieuwd of ik daarmee betere resultaten krijg.
-
Op Windows 11 heb ik heb zoveel gezeur met mijn (waarschijnlijk fake) CH340, dus ik ga toch maar eens kijken naar een kabel met een FTDI chipset. Kan iemand wellicht een goede aanraden?
-
Hi, ik heb een nieuwe versie van pc2p2000 gemaakt die een extra "ontvang-bewaar" modus heeft en te activeren is m.b.v. ?USR2(0) i.p.v. ?USR1(0). Hierbij kun je vanaf de PC iedere keer een los .cas programma naar de P2000T sturen, die dan direct na ontvangst op cassette wordt bewaard, waarna de P2000T dan weer gaat wachten op het volgende .cas bestand. Hiermee kun je dus een hele reeks .cas bestanden in één keer naar cassette wegschrijven. Zorg er hierbij wel voor dat: De cassette waarnaar je wilt schrijven leeg is De eerste letter van iedere bestandsnaam (zoals te vinden in de .cas header) uniek is De PC na het verzenden van ieder .cas bestand een tijdje wacht (afhankelijk van de grootte van het bestand) voordat het volgende .cas bestand weer wordt verzonden. Op die manier krijgt de P2000T genoeg tijd om het ontvangen bestand op cassette te bewaren voordat het klaar is voor het volgende bestand. Hoeveel seconden je na het versturen moet wachten, hangt af van het aantal blokken van het verzonden bestand, maar ik denk dat je met 3 seconden wachttijd per blok wel veilig zit. Vraag: weet iemand toevallig hoe lang het opslaan van 1 blok op cassette precies duurt? Het aantal gewijzigde Basic regels t.o.v. de vorige versie is minimaal en staat keurig beschreven in de header van pc2p2000t.bas: https://github.com/p2000t/software/blob/master/utilities/pc2p2000t/pc2p2000t.bas De readme van de pc2p2000 utility is te vinden op https://github.com/p2000t/software/blob/master/utilities/pc2p2000t/README.MD
-
Direct vanuit Basic lukt dat niet, omdat Basic niet snel/precies genoeg is voor RS-232 communicatie, waarbij timing heel belangrijk is. Voor pc2p200t heb ik echt per machinetaal instructie de cycles moeten tellen en specifieke delays gebruikt om de timing geschikt te krijgen voor 9600 baud. Dat was echt een rot klus RS-232 is trouwens geen poort, maar een serieel communicatie protocol, waarvoor in de P2000T helaas geen handige Monitor-routines zijn. Op de P2000T gaat seriële communicatie inderdaad per enkele bit op poorten $10 (output via bit D7) en $20 (input via bit D0), waarbij $10-$1F en $20-$2F allemaal wijzen naar dezelfde poort. Ik ben momenteel bezig met een aangepaste versie van pc2p200t, die een (enkel) .cas programma via RS232 vanaf een PC inleest, dan direct wegschrijft naar cassette onder de juiste naam (die in de .cas header staat) en daarna wacht op een volgend programma dat via RS232 verstuurd wordt. Naast BAS gaat dit ook werken voor INT, SNG, DBL en FAM bestanden.
-
Ah, ja ik kan het reproduceren; ga ik naar kijken.
-
Gebeurt dat zomaar, of is het reproduceerbaar? Gebeurt het bijv nadat je Ctrl-1 intoetst om de inhoud van een cassette te tonen? Dank je! En voor het cas icoontje gaat de lof naar @blanka (ook voor het P2000T icoontje trouwens) Nieuwe .cas games of applicaties ontvang ik uiteraard graag! Ik zal de verzameling van .cas en .bin bestanden als losse zip-download bij de releases op GitHub zetten
-
Versie 0.8 van M2000 (de Philips P2000 emulator) is uit! Download 'm hier: https://github.com/p2000t/M2000/releases Release notes: Save State feature to save M2000's current state (RAM + ROM + registers) to a single file and reload it at a later time. There's also support for quick/silent save states by pressing Ctrl-C (quick save state) and Ctrl-V (load last saved state). Display-smoothing option, which makes the display look more similar to an original CRT monitor (i.e. less pixelated). Support for emulating a specific P2000T model: P2000T/38 (16K RAM), P2000T/54 (32K RAM) or P2000T/102 (80K RAM). M2000.cfg (editable) preferences file is created on initial startup. Nederlandse vertaling van het menu. Support for locked/readonly cassette files. When trying to CSAVE onto a read-only .cas file, you'll get the P2000 "Geen stopje" error message. After installation on Windows or OSX, all .cas cassette files are now automatically associated with the M2000 emulator. This means you can now just double-click a .cas file to open it directly in M2000. Last openend directories are now retained by the file dialogs. Control/action keys no longer use function keys, but are now defined by [Ctrl] + [Key]. E.g. use Ctrl-O to open a .cas file and Ctrl-R to Reset M2000. See README.md for an overview of supported control keys. Note that these keys also work in full-screen mode.
-
Ik vermoed dat de fix hiervoor nog niet in de versie zit die je nu gebruikt. De nieuwste Windows 32bit release versie van M2000 0.8 is hier te downloaden: https://github.com/p2000t/M2000/releases
-
De oorzaak hiervan is dat de M2000 emulator standaard start met een lege cassette (dit is het bestand Default.cas in de M2000 map onder de Documenten map). Als je een echte P2000T opstart met een lege cassette erin (of Reset drukt) dan krijg je precies diezelfde "Niet gevonden" melding, omdat de P2000T probeert het eerste programma op te tape te starten. Wellicht kan ik beter M2000 standaard laten opstarten *zonder* cassette en dat je die dan expliciet moet toevoegen met "Nieuwe (lege) cassette"? Custom schermresoluties gaven een probleem met scanlines en beeldverhoudingen, dus ik heb het nu beperkt tot 5 schermresoluties + fullscreen. Is er een specifieke schermresolutie die je mist? De huidige resoluties zijn: 640 x 480 960 x 720 1280 x 960 1600 x 1200 1920 x 1440 Full screen
-
Bij mij start Vluchtsimulator ook op met 32kB, maar zodra ik "Begin op de grond" of "Begin in de lucht" selecteer, dan krijg ik "GESTOPT" te zien en daar houdt het dan op. Met 40kB kan ik wel een vlucht doen. Vreemd. Wellicht heb ik een andere/verkeerde versie van Vluchtsimulator. [Edit: ik ontdekte net een andere versie van FlightSim die wel prima werkt met 32K. De versie die ik eerst gebruikte was blijkbaar niet geoptimaliseerd voor 32K.]
-
Tot nu toe lijkt alleen de Vluchtsimulator meer dan 32K RAM nodig te hebben. Weet jij van andere programma's die niet genoeg hebben aan 32K? En Vluchtsimulator doet niet aan bankswitching (geen OUT calls naar poort $94), dus heeft aan 40K genoeg. Vreemd trouwens dat Philips nooit een P2000T/62 heeft uitgebracht; dat lijkt me de goedkoopste oplossing voor een maximaal geheugen vrij (39542 bytes) in BASIC.
-
Hi @Hawker17, hierbij de laatste 32-bit Windows beta-versie van M2000, met daarin o.a. Save states, automatisch opslaan van ingestelde opties en een aanpassing waardoor wellicht problemen met de gamepad/joystick is opgelost. Deze versie is op zich feature-complete, dus ik hoor graag je feedback. O ja, de menu-opties kunnen nu ook in het Nederlands worden getoond (ideetje van @blanka) en M2000 onthoudt nu ook de laatst geopende bestandslocatie. M2000-v0.8-snapshot-win32.zip