kl99 Posted February 9, 2016 Share Posted February 9, 2016 Is this a dedicated manual by TI or do you mean the known GPL Programmer's Guide? I would be very interested to read such a manual. Now I think you mean the GPL Interface Specifications for the 99/4 Disk Peripheral. That can be read here: ftp://ftp.whtech.com/datasheetsand manuals/Specifications/GPL Interface Specification for the 99_4 Disk Peripheral V2.0 03-28-1983.pdf ftp://ftp.whtech.com/datasheetsand manuals/Specifications/gpl interfce specs for 99-4 disk peripheral.pdf ftp://ftp.whtech.com/datasheetsand manuals/Datasheets - TI/TI99 TI GPL Interface Specs for Disk Peripheral.pdf Cyc Users: Y:\vendors\ti\internal\diskper\gpliface\gpliface.pdf Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted February 9, 2016 Share Posted February 9, 2016 Those may be the right ones, Klaus (I know I put some of them onto WHT), but he might have been referring to another one, which was why I asked the question about it. 1 Quote Link to comment Share on other sites More sharing options...
+OLD CS1 Posted June 9, 2016 Share Posted June 9, 2016 Can we add a reference or a thread or two on RLE encoders/decoders? I have been trying to find something and turning up nothing (my search foo is weak.) Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted June 10, 2016 Share Posted June 10, 2016 Here's a nice little explanation of the RLE format. . . Quote Link to comment Share on other sites More sharing options...
+OLD CS1 Posted June 10, 2016 Share Posted June 10, 2016 Here's a nice little explanation of the RLE format. . . Thanks. I thought I remember some code examples floating around the forum. I am going to play with some chunked encoding and see what kind of output I can produce. Quote Link to comment Share on other sites More sharing options...
cbmeeks Posted June 13, 2016 Share Posted June 13, 2016 (edited) Thanks. I thought I remember some code examples floating around the forum. I am going to play with some chunked encoding and see what kind of output I can produce. Correct. I typed that wrong. But that's what I meant. Wrong quote. Stupid mobile site. Please delete since I can't. Edited June 13, 2016 by cbmeeks Quote Link to comment Share on other sites More sharing options...
Asmusr Posted June 18, 2016 Share Posted June 18, 2016 Can we add a reference or a thread or two on RLE encoders/decoders? I have been trying to find something and turning up nothing (my search foo is weak.) Tursi's Convert9918 program can encode the output in RLE is this simple format: Count Byte: - if high bit is set, remaining 7 bits indicate to copy the next byte that many times- if high bit is clear, remaining 7 bits indicate how many data bytes (non-repeated) follow Here's a Java program to encode a generic file in this format on the PC: import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; import java.io.*; /** * Created by Rasmus on 12-06-2016. */ public class RLE { // // Count Byte: // - if high bit is set, remaining 7 bits indicate to copy the next byte that many times // - if high bit is clear, remaining 7 bits indicate how many data bytes (non-repeated) follow // public static String APPLICATION_NAME = "RLE v. 1.0"; public static void main(String[] args) { new RLE(); } public RLE() { JFileChooser fileChooser = new JFileChooser(); fileChooser.setFileFilter( new FileNameExtensionFilter("Binary Files", "bin") ); fileChooser.setMultiSelectionEnabled(false); fileChooser.setCurrentDirectory(new File(".")); if (fileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { File file = fileChooser.getSelectedFile(); String fileName = file.getName(); int p = fileName.lastIndexOf("."); if (p != -1) { fileName = fileName.substring(0, p); } try { ByteArrayOutputStream out = new ByteArrayOutputStream(); FileInputStream in = new FileInputStream(file); int n = 0; int count; byte[] buffer = new byte[128]; int i; int last = -1; int current = in.read(); while (current != -1) { if (last != -1) { if (current == last) { // Same byte count = 1; while (current == last && count < 127) { count++; last = current; current = in.read(); } // Output run of identical bytes out.write(0x80 | count); out.write(last); n += 2; last = current; current = in.read(); } else { // Different bytes count = 0; i = 0; buffer[i++] = (byte) last; while (current != last && current != -1 && count < 127 ) { count++; buffer[i++] = (byte) current; last = current; current = in.read(); } // Output different bytes out.write(count); out.write(buffer, 0, count); n += 1 + count; } } else { last = current; current = in.read(); } } out.write(0); fileChooser.setSelectedFile(new File(fileName + "-rle.bin")); fileChooser.setFileFilter( new FileNameExtensionFilter("Binary Files", "bin") ); fileChooser.setMultiSelectionEnabled(false); if (fileChooser.showSaveDialog(null) == JFileChooser.APPROVE_OPTION) { File outputFile = fileChooser.getSelectedFile(); try { FileOutputStream fileOutputStream = new FileOutputStream(outputFile); fileOutputStream.write(out.toByteArray()); fileOutputStream.close(); } catch (Exception e) { JOptionPane.showMessageDialog(null, e.getMessage(), APPLICATION_NAME, JOptionPane.ERROR_MESSAGE); e.printStackTrace(); } } } catch (Exception e) { JOptionPane.showMessageDialog(null, file.getName() + ": " + e.getMessage(), APPLICATION_NAME, JOptionPane.ERROR_MESSAGE); e.printStackTrace(); } } } } And here's a TMS9900 assembly snippet to decode this format: * RLE decode from VDP RAM LI R0,>2000 ; VDP address of RLE encoded data BL @VRAD ; Setup read address LI R1,MAP ; Destination in CPU RAM RLEDC1 MOVB @VDPRD,R2 ; Get count byte JEQ RLEDC5 ; If zero we're done JLT RLEDC3 ; If negative it's a run * Different bytes SRL R2,8 ; Shift to LSB RLEDC2 MOVB @VDPRD,*R1+ ; Get byte and write to destination DEC R2 ; Count down JNE RLEDC2 ; Loop JMP RLEDC1 ; Done with this sequence * Identical bytes RLEDC3 ANDI R2,>7F00 ; Reset high bit SRL R2,8 ; Shift to LSB MOVB @VDPRD,R0 ; Get byte that should be repeated RLEDC4 MOVB R0,*R1+ ; Write byte to destination DEC R2 ; Count down JNE RLEDC4 ; Loop JMP RLEDC1 ; Done with this sequence * Return RLEDC5 B *R11 If you want to decode from CPU RAM instead that should be easy to change. RLE.jar.zip 1 Quote Link to comment Share on other sites More sharing options...
Asmusr Posted June 18, 2016 Share Posted June 18, 2016 Now I have been looking for a LZ77 decoder. I found this in the Colecovision forum, and I'm considering porting the Z80 code to TMS9900. But what I really need is a "sliding window" format that can be used for streaming where you don't have to keep the entire decoded file in memory. 2 Quote Link to comment Share on other sites More sharing options...
+OLD CS1 Posted June 18, 2016 Share Posted June 18, 2016 Now I have been looking for a LZ77 decoder. I found this in the Colecovision forum, and I'm considering porting the Z80 code to TMS9900. But what I really need is a "sliding window" format that can be used for streaming where you don't have to keep the entire decoded file in memory. Ah, now here is something to sink your teeth into, thank you. I need to be able to decode a stream which can repeat already-decoded frames without maintaining a lot in memory. I am playing with a few ideas with everything on paper right now in pseudo-code. Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted September 16, 2016 Share Posted September 16, 2016 There is a resource somewhere on this forum that is a thread in which matthew180 describes his approach to assembly programming for games. Game loops, bypassing internal VDP routines, sub-routine call approach, etc... I cannot seem to find it anymore... do threads expire? does anyone know where it is? If so please reply with the link. can it be pinned in post #1 under assembly resources? -M@ Quote Link to comment Share on other sites More sharing options...
Asmusr Posted September 16, 2016 Share Posted September 16, 2016 There is a resource somewhere on this forum that is a thread in which matthew180 describes his approach to assembly programming for games. Game loops, bypassing internal VDP routines, sub-routine call approach, etc... I cannot seem to find it anymore... do threads expire? does anyone know where it is? If so please reply with the link. can it be pinned in post #1 under assembly resources? -M@ http://atariage.com/forums/topic/162941-assembly-on-the-994a 2 Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted September 16, 2016 Share Posted September 16, 2016 Nice! Thank you... when I search matthew180's content, I get this message: (Search limited from 17-September 15) Clearly that is why I could not find http://atariage.com/forums/topic/162941-assembly-on-the-994a Linking in the top of this thread would be really good. This is right up there, to me, with the Bruce Harrison - art of assembly work. And an important contrasting approach as well. -M@ Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted September 25, 2016 Share Posted September 25, 2016 Fred Kaal has updated his ROM only Editor assembler cartridge suite. In addition to the recent 80/40 column changes he has added some editor key-presses for convenient line editing including an undo. Also, there is a debugger included! http://www.ti99-geek.nl/Modules/edas4/edas4.html -M@ 6 Quote Link to comment Share on other sites More sharing options...
HackMac Posted October 7, 2016 Share Posted October 7, 2016 Today I found a book with information about the TMS9900 family. It is recently uploaded on bitsavers' server (second July 2016). I think that this book is not available on the whtech server, so I will leave a link to that resource: MP702_TMS9900_Family_System_Development_Manual_1977.pdf (It would be great if some of the Sysops can upload it on whtech.) 1 Quote Link to comment Share on other sites More sharing options...
+Vorticon Posted October 7, 2016 Share Posted October 7, 2016 Fred Kaal has updated his ROM only Editor assembler cartridge suite. In addition to the recent 80/40 column changes he has added some editor key-presses for convenient line editing including an undo. Also, there is a debugger included! http://www.ti99-geek.nl/Modules/edas4/edas4.html -M@ I wonder if these carts will be made available for sale on Arcadeshopper.com... Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted October 7, 2016 Share Posted October 7, 2016 Fred makes images available for a variety of hardware vehicles. This particular bundle EA-IV is only 32k, and works nicely from the Flashrom99. 1 Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted October 7, 2016 Share Posted October 7, 2016 Fred makes images available for a variety of hardware vehicles. This particular bundle EA-IV is only 32k, and works nicely from the Flashrom99. Yes, thank you again for converting for FR99 use! It's awesome to be able to QUICKLY edit things like the FAVS file for Stuart's Internet browser. 80 columns ROCKS! Other people love it too... << LOOK HERE >> it's been downloaded 50 times already!! Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted October 7, 2016 Share Posted October 7, 2016 Yes, thank you again for converting for FR99 use! It's awesome to be able to QUICKLY edit things like the FAVS file for Stuart's Internet browser. 80 columns ROCKS! Other people love it too... << LOOK HERE >> it's been downloaded 50 times already!! The one I converted was Fred's EA-II, with my hack of his 80 column EDIT 1... Fred has evolved things himself, and published EA-IV that has his 80 column support and improved editor keyboard shortcuts... I guess I'll fetch that and post it to the FR99 thread. Fred's changes since my hack are pretty cool. -M@ Quote Link to comment Share on other sites More sharing options...
RXB Posted December 3, 2016 Share Posted December 3, 2016 Why does the data on RXB in TI Development Resources say 2012? RXB 2015 has been out since Nov 2014? I am working on RXB 2016 right now? Even Classic99 has RXB 2015E installed in it for almost 6 months or more? Quote Link to comment Share on other sites More sharing options...
+retroclouds Posted December 3, 2016 Author Share Posted December 3, 2016 Why does the data on RXB in TI Development Resources say 2012? RXB 2015 has been out since Nov 2014? I am working on RXB 2016 right now? Even Classic99 has RXB 2015E installed in it for almost 6 months or more? Hi Rich, sorry about that. I've been neglecting the Development Resources thread for quite some time. Actually I requested a few folks if they want to take over this thread, but no interest so far. So I guess, it's sticking to me. That being said, If I do keep doing this thread the plan for the future is to update it 2x to 3x a year and to simplify it. Believe it or not, but there's quite an amount of BBcode behind, and that makes updating quite a task. Would appreciate if people ping me with the details on what they want to have added, as I don't have the overview of all new things that happened lately. I'll update the thread this weekend. Regarding RXB, can you point me to the relevant posts, so I can include it. Thanks. Cheers Filip 3 Quote Link to comment Share on other sites More sharing options...
+retroclouds Posted December 4, 2016 Author Share Posted December 4, 2016 Thread updated: 1. Split sections into Software and Manuals/Tutorials. Example: Renamed "Assembly Language" to "Assembly Language - Software" and added "Assembly Language - Manuals" 2. Some hyperlinks fixed and added JS99er * Member name adjusted * Hyperlink to Github source code repository added asm990 * Hyperlink was broken. Fixed that, new hyperlink added. RXB Removed link to RXB2012 on retroclouds site. Waiting for link where latest version of RXB can be found. It probably is in some thread, but which one? Would make sense to move this to GitHub ? fbForth Removed fbFort manual link to retroclouds page. Get latest version of fbForth in the thread instead. 3. Removed link to dropbox archive. The archive is no longer there, so..... 3 Quote Link to comment Share on other sites More sharing options...
+retroclouds Posted December 5, 2016 Author Share Posted December 5, 2016 Thread update: * Added missing RXB2015E link and included reference to RXB tutorial videos. 2 Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted December 6, 2016 Share Posted December 6, 2016 (edited) Broken. Edited December 6, 2016 by sometimes99er Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted December 6, 2016 Share Posted December 6, 2016 Broken. Yeah—All of the Hall-of-Fame links should be changed to start with the following URL: “http://hof.ti99ers.org/”. ...lee Quote Link to comment Share on other sites More sharing options...
+retroclouds Posted December 6, 2016 Author Share Posted December 6, 2016 ok, noted. Will be updated in the next few days. Collecting some more broken stuff first. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.