Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

612 Excellent

1 Follower

About apersson850

  • Rank

Recent Profile Visitors

7,199 profile views
  1. As I wrote in my first question, my primary desire is to be able to use the p-system. Which works in Classic 99. I was thinking a bit about getting files from the TI to the Classic 99, without having to type them in again. If I limit myself to p-system text files, then this seems to be a procedure that would work without the simulator being able to use RS-232. Print the text file to Hyper Terminal, which captures it. Copy the content to Windows clip board. Use the CLIP "device" in the simulator to read it into a DIS/VAR 80 file on a simulated disk drive. Start the p-system with that drive still mounted. Use the Pascal program I wrote many years to allow the p-system to retrieve text from DIS/VAR 80 files and then store it as a p-system text file on another disk. That should do it, as far as I can see. But the first thing I need to do is to get rid of the horrendous TI font for lower case letters.
  2. Thank you. I'll have to look into making larger DSK files to start with. The p-system doesn't care about the allocation bitmap. It just fills it, then uses sector access on the disk, refering to its own directory on that disk. It uses four sectors for the ordinary disk system. Disk header. Allocation bit map. File entry for dummy PASCAL file. Spacer. Then the p-systems disk directory follows, possibly by a duplicated directory (that's your parachute should you get a corrupted main directory).
  3. No, such large disks will not be compatible with anything else. The sector used bitmap on normal disks, does that set the limit at 400 K? I created a large dummy file and tried to copy it, but that failed. So maybe it doesn't work. If I don't have a DSK image, but try to create an empty disk, how does that work? If I just give a file name, a file is created, but how big will it become? Adding three more drives to the p-system was easy. Normally, you'd have to write a program to load the values to the system's I/O device table, but through the debugger you can patch the table directly there. Then assign some DSK images to disks 4, 5 and 6, do a Volume command in the Filer and they are all there. Can a serial port be emulated too, or is that impossible?
  4. I haven't tried filling it yet. 😃 I made a new disk, by using the Disk menu and associate a drive with a new, empty file. I didn't fill that file with anything. Didn't get any menu to set the size of it either. So I thought maybe it just extends it as needed. Then, from inside the p-system, I claimed the disk has 2000 blocks, each block being 512 bytes. I can store files on it and they work, but they don't consume more than a fraction of the space allegedly being available yet. After doing this disk, I mounted each of the 90 k disk images, for the distribution disks that once came with the p-system, in another drive. Copied them one after another to my single big disk. Restarted the p-system and they seem to work. Haven't tried accessing all of them, and their combined size hasn't exceeded 360 Kbytes yet. So maybe it doesn't work all the way. The p-system has a maximum of 32767 blocks on a blocked device. One block is 512 bytes.
  5. Thanks for all help. I had no problems creating 1 Mbyte drives in the p-system with Classic 99. Three of them provides plenty of space. That also means you can easily compile all the distribution files for Pascal on one disk, leaving the other two for your own stuff. Although I didn't try, you can probably make 16 Mbyte drives in the simulator, but since that doesn't lift the p-system's limit of 77 files on a disk, it's pointless. One of the first things I'll try is to get decent looking characters, instead of the standard TI upper case/more upper case font. I'll see if I can move the SYSTEM.CHARAC file I have on the real TI to the emulator. If nothing else, I can type the content in, using the PATCH utility. Did that once, many years ago, when I first created the file on the TI 99/4A. Then I'll see if I can get the other three drives going too. The p-system we have sets the limit for normal disk drives to six. Version IV.1 allowed more, as well as one level of subdirectories.
  6. Well, I selected Classic 99 to try. Didn't take too long to figure that out. I'vewritten, compiled and run my first emulated TI 99/4A Pascal program. I presume the main problem will be to get thiings on physical TI 99/4A disks to the emulator. I see that Classic 99 supports the Windows clipboard, but that is reading it as a dis/var file. Since the p-system doesn't read files that way, some clever thinking is needed here. I also created larger disks, so I could store all system files on one disk. Would such a large disk image be beneficiary to push back to whtech, maybe? There are only three disks available, which is as expected, since the p-system only allows for that in original form. Will be interesting to see if a patch works just like in the real system.
  7. I print serially to a mini laptop, running Hyper Terminal capturing the input to a text file. Then that file prints on my laser printer. Thus I get modern hard copy, but from the TI's point of view, it looks like the old days.
  8. Yes, I understand that "best" is difficult to define, since it depends so much on what you desire. But, as stated, the p-code/Pascal should be possible to run. And I prefer if it doesn't take weeks to figure out which files to download from different places and in different combinations to get something working. Does Classic 99 support the p-code card? MAME, is that kind of a general emulation tool, which is configurable to emulate different machines?
  9. I haven't bothered with emulators before. Thought should I go retro it should be on the real thing. But like now, when I've been out of town for weeks, I can't go real. Is there any opinion about which is best? We're talking Windows 10 and I want to be able to emulate Pascal/p-code as well.
  10. Yes, if you don't have expansion memory, then that's not a viable option. The minimum configuration were I was involved in a meaningful Extended BASIC program with assembly support was for a console with tape recorder, Extended BASIC module and 32 K memory expansion only. We used CALL LOAD statements to get a minimum loader in there, then that loaded the assembly program.
  11. As long as you keep track of what's input and output, then no.
  12. With Extended BASIC you got a comprehensive BASIC implementation together with the ability to use assembly support in the 8 K RAM section. That allowed pretty complex applications. I wrote an assembly system to store and retrieve strings in the 8 K RAM. You could also store them in, or read them from, a file. That was used in a simple wordprocessor, otherwise written in BASIC.
  13. If there was a need for speed, I usually augmented Extended BASIC with assembly. Or for things that couldn't be done in Extended BASIC.
  14. Precisely! BASIC is there for simplicity in use, not for utmost execution speed. Keeping software logical and structured saves time in development and maintenance of the software. To speed up BASIC it's better to be clever when selecting algorithms, rather than trying to store the lines in a specific order, use alienated variable names (like A, B and C instead of COUNTER, INDEX and SUM), or mess up subroutines with multiple cryptical entries and exits. Refactor your code instead, if you have messed it up. Logic and structure frequently also renders faster execution, as you tend to do less unnecessary things, if your code is in good order. SUB is a very good addition to Extended BASIC. One of its more valuable assets. The local variables are especially valuable if you do, as was suggested above, a library of functions, which you can merge with your program. Regardless of which line numbers the SUB ends up occupying, and regardless of which variable names you have used in the SUB and your main program, it still works the same. That's not at all the same if you use the GOSUB statement, in which case the namespace for your variables are the same as for the main program. You also must keep track of where it is, when you write your code, as it's called by line number reference. Before I made it possible to use Pascal on my TI, I mainly used Extended BASIC. I used the SUB facilities extensively. If it cost some seconds in execution, it paid that back in quicker development.
  • Create New...