Tursi Posted February 27, 2023 Author Share Posted February 27, 2023 10 hours ago, matthew180 said: Perhaps just moderation? Just a thought. 🙂 Well, it's a case of returns. I can put in a few hours of work and get literal cheers, or I can put in a hundred hours of work and get told "but MAME is better". Sorry, no matter how many individual kudos I get (and I do appreciate), the fact is that message is published across the internet. There's even a published book that tells people to download my emulator to get ROMs for MAME. That is something I can never overcome. (Although Retroarch someday will probably overcome MAME, it's becoming dominant...) There's not really much wrong with Classic99 as it stands. V4 was created to try and address the cross-platform requests and try a cleaner architecture based on experience. It works, the architecture is much nicer, but now that it's proven I don't feel too excited about putting myself back several years... Especially the debugger, the biggest strength of the tool, is much harder on a cross-platform approach. Programming Classic99 for Windows was my relaxation code, because Windows coding is notably simpler and more reliable than most other APIs. I won't fight you* on that point or even elaborate. I have decades of experience on several, professional and hobby. Only one I can't speak deeply to is Mac, but I didn't like what I saw. As an aside, I looked at the Retroarch API. I don't really like it enough to embrace it either. It's just burnout, really. Letting my brain work on something that isn't code is a good reset. I'll fix all my timing when I win the lotto! (*you - being a general call out to the keyboard warrior who was reaching for the reply button the second they saw that ) 3 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5216675 Share on other sites More sharing options...
Retrospect Posted February 27, 2023 Share Posted February 27, 2023 13 minutes ago, Tursi said: It's just burnout, really. Yes. I relate. 2 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5216682 Share on other sites More sharing options...
+retroclouds Posted February 27, 2023 Share Posted February 27, 2023 oh yes, classic99 is just fine as it stands. From my point of view there are only a few things missing in classic99: More complete support of the F18a. In particular 30 rows mode and sprite support in these modes (would in particular help in stevie development). Support for FGROM99 advanced modes Source listing support in the debugger I’m now using a combination of js99er and classic99 for development. Both great emulators with their own strengths. We’re blessed to have such a wealth of really good emulators available in our TI community. Thank you @Tursi @Asmusr @mizapf (and all other emulator developers) for your hard work on this. 1 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5216697 Share on other sites More sharing options...
Retrospect Posted February 27, 2023 Share Posted February 27, 2023 Well I forget to mention , very often, the fact that 99 percent (pun not intended) of my games are written on Classic99. Mame is fine and all but I guess it's what we're comfortable with? Classic99 I am comfortable with. It's like an easy-going long-term girlfriend. Just so you know I appreciate the heck out of it but always forget to say it. 5 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5216698 Share on other sites More sharing options...
+InsaneMultitasker Posted February 27, 2023 Share Posted February 27, 2023 32 minutes ago, Tursi said: There's not really much wrong with Classic99 as it stands. Anything wrong is probably limited to a typo or two in the manual that no one seems to read I generally have steered away from emulation/simulation because I prefer to use my real hardware for most of my programming and development*. That said, Classic99 is what I consider the most user-friendly platform for running and debugging my TI code; if not for Classic99, many of my reverse-engineering efforts and how-does-this-work projects would have been non-starters. I am certain that others have similar thoughts and experiences. *Programing on real hardware is my go-to for relaxation and a nice dose of nostalgia, though these days I have little time for either. 3 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5216709 Share on other sites More sharing options...
Tursi Posted February 27, 2023 Author Share Posted February 27, 2023 1 hour ago, retroclouds said: More complete support of the F18a. In particular 30 rows mode and sprite support in these modes (would in particular help in stevie development). (...) We’re blessed to have such a wealth of really good emulators available in our TI community. Thank you @Tursi @Asmusr @mizapf (and all other emulator developers) for your hard work on this. I feel bad about the 30 row thing every time you mention your editor. Eventually the guilt will build up enough to add it!! And yeah, I'm pretty pleased to see the variety of strong emulators we have these days - even beyond those three. It means there's literally a way for someone to do everything they need to do. 4 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5216719 Share on other sites More sharing options...
SteveB Posted February 27, 2023 Share Posted February 27, 2023 6 hours ago, Tursi said: And yeah, I'm pretty pleased to see the variety of strong emulators we have these days - even beyond those three. It means there's literally a way for someone to do everything they need to do. Now that the general wishlist has been opened... I would love to see an emulator with IPC and/or Shared Memory .. right now I can send keyboard codes to Classic99 and other emulators, which is error-prone. I have no way of reading the screen to get a feedback. Reading access to the VDP RAM (and CPU RAM) would be great. This would also open the possibility to use the TI for AI experiments, let the PC learn to play some games. 2 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5216835 Share on other sites More sharing options...
Tursi Posted February 28, 2023 Author Share Posted February 28, 2023 (edited) 14 hours ago, SteveB said: Now that the general wishlist has been opened... I would love to see an emulator with IPC and/or Shared Memory .. right now I can send keyboard codes to Classic99 and other emulators, which is error-prone. I have no way of reading the screen to get a feedback. Reading access to the VDP RAM (and CPU RAM) would be great. This would also open the possibility to use the TI for AI experiments, let the PC learn to play some games. Your wish is retroactively granted, sort of. First though - for sending commands to Classic99 I did notice you were using keystrokes. If you fill the clipboard and send a paste command instead, Classic99 will be able to spit out the keys much faster without dropping any. Here's the github for a tool that does just that specifically for your reference (I haven't tested it lately - fair warning - but I haven't changed that code either.) -- https://github.com/tursilion/classic99paste For direct access to Classic99's memory I started an external debug system that runs through UDP packets many years ago. This is documented in debugger\dbghook.cpp (https://github.com/tursilion/classic99/blob/main/debugger/dbghook.cpp) - but it is not fully implemented. Only the CPU interface is implemented (though fully - so you /could/ talk to any hardware in the system through it - I used it to test external sound and vdp code). I would have to add an enable to it - I didn't like the idea of having an open socket in the shipping code (even if it did bind only to localhost). If that looks useful I could add the enable switch (probably command line) and push it out. I owe Rich an update for RXB anyway. Edited February 28, 2023 by Tursi 4 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5217361 Share on other sites More sharing options...
SteveB Posted February 28, 2023 Share Posted February 28, 2023 Thank you for the hint ... I am not sure if I will dive down the CPU/UDP way. I don't think I would be able to find my way to VDP RAM. I am more the kind of an application developer than a system developer. We will see .. My current approach works more or less with all emulators, as long you can identify the window to send the keys to. I will test in on @PeteE's BuLWiP emulator as soon as I get a pre-compiled version. I might test the option to use the clipboard, thank you for the hint. Perhaps you re-consider the IPC / Shared-Memory thing one day when you are bored ... okay, unlikely. Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5217709 Share on other sites More sharing options...
Tursi Posted March 1, 2023 Author Share Posted March 1, 2023 10 hours ago, SteveB said: Thank you for the hint ... I am not sure if I will dive down the CPU/UDP way. I don't think I would be able to find my way to VDP RAM. I am more the kind of an application developer than a system developer. We will see .. Perhaps you re-consider the IPC / Shared-Memory thing one day when you are bored ... okay, unlikely. How do you want to access the emulator's memory if networked is too much effort? You realize that shared memory is actually going to be more effort, right? In order to avoid race conditions, the emulator needs to control access to its resources. If you change things underneath it, you will experience strange, untraceable bugs. That said, if that's all you want to do, you can open another processes' memory without any permissions from that app. Combine that with the map file, which I guess I could provide, and you can directly access the memory. 1 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5218026 Share on other sites More sharing options...
PeteE Posted March 1, 2023 Share Posted March 1, 2023 That reminds me, there was this guy Rikkles in the RoA discord that made a customized version of classic99 that adds the shared memory feature so that Grid Cartographer could read the maps in Realms of Antiquity: https://github.com/hasseily/classic99 I saw it in the RoA discord: https://discord.com/channels/644060281923960864/827590732596117524/833964361520906260 Maybe that will work for you @SteveB I presume it was created with Tursi's blessing Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5218258 Share on other sites More sharing options...
SteveB Posted March 1, 2023 Share Posted March 1, 2023 14 hours ago, Tursi said: You realize that shared memory is actually going to be more effort, right? Actually not. I am blessed with naivety ... I I really knew what awaited me, I would not have started the most thrilling things in my life. As this bears absolutely no urgency, we might share some ideas on one of the Saturday Pandemic-Calls, you also occasionally join... Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5218370 Share on other sites More sharing options...
+mizapf Posted March 1, 2023 Share Posted March 1, 2023 I always tell my students about shared memory in multithreaded scenarios with a serious, concerned facial expression, and train them to feel uneasy whenever they hear about it. "We could use shared memory for data exchange, but you know, well, ... no." 1 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5218378 Share on other sites More sharing options...
SteveB Posted March 1, 2023 Share Posted March 1, 2023 39 minutes ago, mizapf said: I always tell my students about shared memory in multithreaded scenarios with a serious, concerned facial expression, and train them to feel uneasy whenever they hear about it. "We could use shared memory for data exchange, but you know, well, ... no." Just looking, not touching ... I just want to read what is on the screen ... if the compiler is ready or reported an error ... still no? Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5218392 Share on other sites More sharing options...
+mizapf Posted March 1, 2023 Share Posted March 1, 2023 Reading considered harmless - usually. Except for some rare cases, where our VDP comes to my mind, and its status register in particular. (Here, reading resets the interrupt latch.) Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5218424 Share on other sites More sharing options...
+TheBF Posted March 2, 2023 Share Posted March 2, 2023 3 hours ago, mizapf said: I always tell my students about shared memory in multithreaded scenarios with a serious, concerned facial expression, and train them to feel uneasy whenever they hear about it. "We could use shared memory for data exchange, but you know, well, ... no." Would you ever suggest a cooperative approach to multi-threading with atomic operations on the shared resource that run to completion in ALL cases. (serious face here) 🤬 Not popular these days but it is an alternative solution to the problem. Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5218457 Share on other sites More sharing options...
Tursi Posted March 3, 2023 Author Share Posted March 3, 2023 On 3/1/2023 at 11:13 AM, PeteE said: That reminds me, there was this guy Rikkles in the RoA discord that made a customized version of classic99 that adds the shared memory feature so that Grid Cartographer could read the maps in Realms of Antiquity: https://github.com/hasseily/classic99 I saw it in the RoA discord: https://discord.com/channels/644060281923960864/827590732596117524/833964361520906260 Maybe that will work for you @SteveB I presume it was created with Tursi's blessing It was initially created with my blessing, then modified in ways beyond that agreement, so I stopping following it so I wouldn't get mad. 3 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5219191 Share on other sites More sharing options...
+OLD CS1 Posted March 3, 2023 Share Posted March 3, 2023 20 minutes ago, Tursi said: It was initially created with my blessing, then modified in ways beyond that agreement, so I stopping following it so I wouldn't get mad. Our current climate is such that anyone lobbing a C&D at someone for violating an agreement is considered the bag guy. Sometimes I hate people. Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5219194 Share on other sites More sharing options...
Tursi Posted March 3, 2023 Author Share Posted March 3, 2023 13 hours ago, OLD CS1 said: Our current climate is such that anyone lobbing a C&D at someone for violating an agreement is considered the bag guy. Sometimes I hate people. Nah, it's fine. I decided that although it was more than I agreed with, it was supporting the RoA community, which I do agree with. So my best course of action was to look somewhere else. 4 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5219485 Share on other sites More sharing options...
+OLD CS1 Posted March 3, 2023 Share Posted March 3, 2023 1 hour ago, Tursi said: Nah, it's fine. I decided that although it was more than I agreed with, it was supporting the RoA community, which I do agree with. So my best course of action was to look somewhere else. You are a good man, Charlie Brown. 2 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5219519 Share on other sites More sharing options...
Tursi Posted April 25, 2023 Author Share Posted April 25, 2023 Classic99 399.064 Just a minor tweak to clear out the auto-detected ROM list before running a new search. The symptom was if you loaded a program with 2 or more ROMs, then loaded one with fewer, you might still see traces of the first program in memory. You could also work around that with Cartridge->Eject. But this fixes it. It might take a day for the webpage text to update as I don't do it by hand anymore, so just check that the downloaded version says 399.064. https://harmlesslion.com/software/classic99 9 2 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5245623 Share on other sites More sharing options...
jenorton Posted May 7, 2023 Share Posted May 7, 2023 Hi: I am late on this, but, just had to throw my 2 cents in. To say that MAME is better than Classic99 is not entirely accurate, considering Classic99's strengths. Classic99 is, by far, the easiest way for someone to jump in and really experience the TI 99/4A on their own system. Just start it up, and boom! it works. A determined user can, certainly, set up MAME, but, it takes far more of a learning curve, and, the effort required to obtain ROMs and such can be tricky. As for downloading the program to obtain ROMs, that thought never crossed my mind. But, I'm preaching to the choir here. Just had to say that. Thanks for all the work you put into Classic99! 4 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5251215 Share on other sites More sharing options...
+TheBF Posted May 8, 2023 Share Posted May 8, 2023 3 hours ago, jenorton said: Hi: I am late on this, but, just had to throw my 2 cents in. To say that MAME is better than Classic99 is not entirely accurate, considering Classic99's strengths. Classic99 is, by far, the easiest way for someone to jump in and really experience the TI 99/4A on their own system. Just start it up, and boom! it works. A determined user can, certainly, set up MAME, but, it takes far more of a learning curve, and, the effort required to obtain ROMs and such can be tricky. As for downloading the program to obtain ROMs, that thought never crossed my mind. But, I'm preaching to the choir here. Just had to say that. Thanks for all the work you put into Classic99! What he said for me as well. Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5251308 Share on other sites More sharing options...
RXB Posted May 8, 2023 Share Posted May 8, 2023 Still waiting for RXB 2023 to be included into Classic99? 1 Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5251356 Share on other sites More sharing options...
Tursi Posted May 8, 2023 Author Share Posted May 8, 2023 3 hours ago, RXB said: Still waiting for RXB 2023 to be included into Classic99? Sorry about that Rich, yes you are. Please post the current version for me here, and I'll push that out tomorrow? Quote Link to comment https://forums.atariage.com/topic/165901-classic99-updates/page/101/#findComment-5251397 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.