Jump to content
IGNORED

Classic99 Updates


Tursi

Recommended Posts

Posted (edited)

You still deserve credit for classic99 and I'm trying to find a way to give you proper attribution with this project. I use linux so I don't have easy access to visual basic to put a splash in front of the executable s.

If I can I'd like to add the attached file as part of a splash in front of the actual carts being loaded in 'app mode'. It sure won't take anything away from the games. Most of my steam games have some type of splash
or waiting before taking me into the games.

Powered_By_Classic99.jpg

HarmlessLion_logo.jpg

Edited by kat71753
  • Like 1
Link to comment
Share on other sites

Posted (edited)

If anyone else here has Visual Basic and would like to contribute to this project. I've attached an image of what this needs.
The syntax is a little off but it's pretty close. This was done in linux gambas but gambas does not compile exe's.
The VB compiled executable could be renamed to the game cart's title and then classic99 left as is or renamed to Game.exe

https://drive.google.com/drive/folders/1yKMdgUTU45kDoWOOkhlPL4gWD9SxLjWY?usp=drive_link
 

An exe could be uploaded into the misc folder. If you do, please include source code. This way no one can say it contains viruses, or anything else malicious.

Screenshot_2024-05-10_22-39-29.jpg

Edited by kat71753
Link to comment
Share on other sites

2 hours ago, kat71753 said:

[usercart0]
name=D-Station_I
ROM0=C|6000|8192|dstatn1C.BIN

 

I was under the impression the the 2nd set of numbers after the | was for the file size of the cart. 8192 would be the file size of this one.

Yes, but all numbers must be in hexadecimal. When you enter 8192, Classic99 reads >8192, and that's actually 33170. In hex, it would be "2000". (The "6000" is also in hexadecimal).

 

The odds are the cart size being too large will still work, but Classic99 will complain bitterly (and might refuse to load it, I forget if it truncates too-large files or just refuses them).

 

You can put Windows Calculator into 'scientific' mode or just use Google to convert numbers to hex

 

  • Like 2
Link to comment
Share on other sites

1 hour ago, kat71753 said:

You still deserve credit for classic99 and I'm trying to find a way to give you proper attribution with this project. I use linux so I don't have easy access to visual basic to put a splash in front of the executable s.

If I can I'd like to add the attached file as part of a splash in front of the actual carts being loaded in 'app mode'. It sure won't take anything away from the games. Most of my steam games have some type of splash
or waiting before taking me into the games.

Or you could just disable the autostart - Classic99 will change the master title page to attribute Classic99 automatically :)

 

  • Like 1
Link to comment
Share on other sites

1 hour ago, Tursi said:

Yes, but all numbers must be in hexadecimal. When you enter 8192, Classic99 reads >8192, and that's actually 33170. In hex, it would be "2000". (The "6000" is also in hexadecimal).

 

The odds are the cart size being too large will still work, but Classic99 will complain bitterly (and might refuse to load it, I forget if it truncates too-large files or just refuses them).

 

You can put Windows Calculator into 'scientific' mode or just use Google to convert numbers to hex

 

THANK YOU! That was definitely informative. Note added!!

Link to comment
Share on other sites

Posted (edited)
1 hour ago, Tursi said:

Or you could just disable the autostart - Classic99 will change the master title page to attribute Classic99 automatically :)

 

I have Steam set for both. I have an entry for it to just load classic99 so that I can run other things than just games...and It's not quite the same feel as pressing 1 or 2 I can't argue but it takes you straight into the game you want to play...and the thing is I've setup joystick emulation so that no keyboard is needed to press 1 or 2...mapped q and p to buttons....Wish they added a p for pause to ti invaders...my all time favorite...but sadly parsec was one of the few that did get a pause.

 

I'm sitting in a lazyboy recliner not at a desk...when I go to play a game...I stand the keyboard upright to the side and sit the mouse over on the coffee table....I hate having to reach for mouse and keyboard with a joystick in my lap...while right in the middle of a game.

Template_For_TI994A_Classic99.jpg

Edited by kat71753
Link to comment
Share on other sites

Posted (edited)

I used classic99 for this because RetroArch doesn't offer a core for the TI994a. I'm not familiar enough with Messen or other and it seems overly complicated. I didn't mean anything by it regarding putting "Powered By Classic 99" on a cartridge. So I hope that wasn't misconstrued. I realize it's kind of opposite of that but it wouldn't feel right either stamping a logo on the TI994A Computer...Please keep in mind too that I'm using Linux so I'm already having to emulate a windows environment either with Steam or Bottles.

Edited by kat71753
Link to comment
Share on other sites

On 5/8/2024 at 10:26 AM, kat71753 said:

name=Killer Caterpillar
rom0=C|6000|80000|killercater.bin

I've tried this with every possible letter rom0=G|6000|80000|killercaterC.bin rom0=C|6000|80000|killercaterC.bin rom0=8|6000|80000|killercater8.BIN

Nothing works but the game loads fine via the menu.

Debug says loading file killer caterpillar 'non inverted' bank mask.

I haven't managed to run my copy of Killer Caterpillar in any emulator (here attached as an RPK file from which you can unzip a 16K ROM file), so could you please post the copy that loads fine via the menu?

 

Regarding the configurations you tried, 80000 means 512K, so this should be changed to 4000 = 16K. And if you use type 8, the start address should really be 0000 instead of 6000 (but maybe Classic99 ignores this?). Killer Caterpillar is a ROM (not a GROM), but I don't know if it's inverted or not since it doesn't work either way for me.

Killer.rpk

Link to comment
Share on other sites

Posted (edited)
43 minutes ago, Asmusr said:

but I don't know if it's inverted or not since it doesn't work either way for me.

It is inverted, when I rename the .bin to have '9' on the end of the filename part, it works in my PPEB device.  If I swap the 8KB sections around and rename it again to end in '8' it loads in both my device and Classic99 (which it didn't before, either way).

 

Seems I somehow got the '9' loader right.  But I don't parse the .rpk XML, I only look for 9's, 8's, G's, D's and C's.

Killerb8.zip

Edited by JasonACT
  • Like 1
  • Thanks 2
Link to comment
Share on other sites

Posted (edited)
1 hour ago, JasonACT said:

It is inverted, when I rename the .bin to have '9' on the end of the filename part, it works in my PPEB device.  If I swap the 8KB sections around and rename it again to end in '8' it loads in both my device and Classic99 (which it didn't before, either way).

You're right but isn't that rather strange? I thought that changing from 8 to 9 would have exactly the same effect as swapping the banks.

Edited by Asmusr
Link to comment
Share on other sites

27 minutes ago, Asmusr said:

You're right but isn't that rather strange? I thought that changing from 8 to 9 would have exactly the same effect as swapping the banks.

Well, maybe, or maybe not.  My loader, when seeing '9', simply changes the address for loading each bank - so it ends up looking like an '8'...  With all the same write addresses to switch banks as it normally would for an '8', and with it starting in the "1st bank".  I saw this file has a header in each bank, but maybe it wasn't coded properly to activate the right bank in the 2nd header?  I didn't really look close enough to be sure though.

  • Like 2
Link to comment
Share on other sites

17 hours ago, kat71753 said:

[usercart0]
name=D-Station_I
ROM0=C|6000|8192|dstatn1C.BIN

 

I was under the impression the the 2nd set of numbers after the | was for the file size of the cart. 8192 would be the file size of this one.

 

If that number is hexadecimal, then yes, but it looks like it is decimal.

 

>>>Oops!—already answered. Sorry...I missed the next page of posts.  @OLD CS1, please delete.<<<

From OLD CS1: Nope.  Everyone is being helpful, including you.

 

...lee

Link to comment
Share on other sites

2 hours ago, JasonACT said:

Well, maybe, or maybe not.  My loader, when seeing '9', simply changes the address for loading each bank - so it ends up looking like an '8'...  With all the same write addresses to switch banks as it normally would for an '8', and with it starting in the "1st bank".  I saw this file has a header in each bank, but maybe it wasn't coded properly to activate the right bank in the 2nd header?  I didn't really look close enough to be sure though.

Right. If it's loaded as inverted it must start up in the 2nd bank.

  • Like 2
Link to comment
Share on other sites

Posted (edited)
5 hours ago, Asmusr said:

I haven't managed to run my copy of Killer Caterpillar in any emulator (here attached as an RPK file from which you can unzip a 16K ROM file), so could you please post the copy that loads fine via the menu?

 

Regarding the configurations you tried, 80000 means 512K, so this should be changed to 4000 = 16K. And if you use type 8, the start address should really be 0000 instead of 6000 (but maybe Classic99 ignores this?). Killer Caterpillar is a ROM (not a GROM), but I don't know if it's inverted or not since it doesn't work either way for me.

Killer.rpk 7.81 kB · 2 downloads

This was pulled from the FinalGrom99 zip file I believe. It will work fine via classic99 menu load but not using app mode. Debugger says non inverted.

killercater.bin

image.thumb.png.cd97d6ad2f88d39ac6944db7943926e2.png

Edited by kat71753
Link to comment
Share on other sites

Posted (edited)

Renamed to 8.BIN and changed to 0000 ...beeep

[usercart0]
name=Killer Caterpillar
rom0=8|0000|4000|killercater8.BIN

 

Yeah I extracted that file killer.rpk and Killer.bin is borked. It just beeps...likely a bad dump.

 

Edited by kat71753
Link to comment
Share on other sites

2 hours ago, kat71753 said:

Renamed to 8.BIN and changed to 0000 ...beeep

[usercart0]
name=Killer Caterpillar
rom0=8|0000|4000|killercater8.BIN

 

Yeah I extracted that file killer.rpk and Killer.bin is borked. It just beeps...likely a bad dump.

 

Nope, Killer Caterpiller is a dump of my Sidecar cartridge and the dump is correct.  I believe it and Arcturus were at the DSR ROM address space of >4000 too.  It’s not a regular cartridge.  
 

Edit:  This was the convo I had with @Tursi  15 years ago about the bank structure.  Note this uses the entire 8K of DSR plus some of upper 32K.  All of you are chasing the wrong memory addresses 🙂

 

image.thumb.jpeg.d14a1af84dafeb88e9b9fb956a9d2a6b.jpeg
killer2.jpg?disposition=download

 

killer.jpg?disposition=download

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

Posted (edited)

As always, "Read the debug log™". I should register that as the Classic99 trademark. ;)

 

Quote

but maybe Classic99 ignores this?

 

Those numbers are the /authority/ in the INI file. If it ignored them, it wouldn't be possible to load the ROM because it wouldn't know what to do with it. (The exception being type '*', which is the same as drag and drop).

 

That said, you're right that all bank switched types (so 8 and 9) load into an /eprom/ space, not CPU memory space, so you want to start them at 0000 unless you have a reason not to. Paging would be way off in that case.

 

Quote

I thought that changing from 8 to 9 would have exactly the same effect as swapping the banks.

 

Yep. Seems a red herring.

 

Quote

My loader, when seeing '9', simply changes the address for loading each bank - so it ends up looking like an '8'

 

Exactly what Classic99 does (but it might be the other way around, since I implemented inverted first).

 

Quote

If it's loaded as inverted it must start up in the 2nd bank.

 

Classic99 looks for a bank to start in these days. That might be causing an issue if the cart has an assumption, but generally any bank with a header is a safe bet.

 

Quote

Debugger says non inverted.

 

This is not detected. It's loading non-inverted because it believes you have told it to.

 

In this case it's because it can't recognize 'r' as a bin type, so it falls back on non-inverted.

 

killercater.bin does run - but are the background graphics supposed to be all blocky like that? They look corrupt.

 

So getting it working. After drag and drop, Classic99 reports:

 

[34204] Loading file (D:\new\killercater.bin) from disk: Type 8, Bank 0, Address 0x0000, Length 0x4000
[34204] Loaded 16384 bytes, non-inverted, bank mask 0x1
[34204] Found ROM header in page 0, setting bank. NOT REALISTIC.

 

Everything you need for the INI file is right there in that first line:

 

name=Killer Caterpillar
rom0=8|0000|4000|d:\new\killercater.bin

 

Type 8, address 0000, length 4000 (and the filename)

 

With that, it works fine from the menu. Was also able to make it work from App mode. (That is kind of a fun use, now that you make me try it ;) ).

 

Quote

Note this uses the entire 8K of DSR plus some of upper 32K.

 

I vaguely remember that! Someone must have done a conversion at some point, cause this definitely runs as a non-inverted cart.
 

Edited by Tursi
Link to comment
Share on other sites

18 hours ago, Asmusr said:

Right. If it's loaded as inverted it must start up in the 2nd bank.

Just to explain a bit more, because it puzzled me for a while: The cartridge file I posted has the exact same header and loader code in both banks, but the code doesn't start by setting the bank (it does a strange MOV R0,@>1770 instead), so if bank 0 happens to be selected it will copy the same game code twice to the >A000 area and will crash. This version must be loaded as inverted and start up in bank 1. The version that JasonACT posted where the banks are swapped, on the other hand, depends on starting in bank 0 and it must be loaded as non-inverted. 

  • Like 3
Link to comment
Share on other sites

40 minutes ago, Asmusr said:

it does a strange MOV R0,@>1770 instead

Should have used @>6000 :)  Yes, I looked too.  I'd call it a small bug.

 

Technically though, the emulators (I tried a couple) are setting the wrong initial bank for inverted cartridge files being loaded.

 

I have no real opinion on that being a bug.

Link to comment
Share on other sites

On 5/11/2024 at 8:34 PM, Tursi said:
name=Killer Caterpillar
rom0=8|0000|4000|d:\new\killercater.bin

This did not work for me. The bin file must be intact or it wouldn't load by menu...but this just beeeeps in app mode.

Link to comment
Share on other sites

[audio]
max_volume=80
samplerate=22050
backgroundNoise=0
continuousReader=0
[AppMode]
EnableAppMode=1
AppName=Killer Caterpillar
SkipTitle=1
AutoStartCart=2
[Disk0]
Type=0
[Disk1]
Type=1
Path=.\DSK1\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=0
FIAD_ReadTextWithoutExt=0
FIAD_ReadImgAsTIAP=1
FIAD_AllowNoHeaderAsDF128=0
FIAD_EnableLongFilenames=0
IMAGE_UseV9T9DSSD=0
DISK_AutoMapDSK1=0
[Disk2]
Type=1
Path=.\DSK2\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=0
FIAD_ReadTextWithoutExt=0
FIAD_ReadImgAsTIAP=1
FIAD_AllowNoHeaderAsDF128=0
FIAD_EnableLongFilenames=0
IMAGE_UseV9T9DSSD=0
DISK_AutoMapDSK1=0
[Disk3]
Type=1
Path=.\DSK3\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=0
FIAD_ReadTextWithoutExt=0
FIAD_ReadImgAsTIAP=1
FIAD_AllowNoHeaderAsDF128=0
FIAD_EnableLongFilenames=0
IMAGE_UseV9T9DSSD=0
DISK_AutoMapDSK1=0
[Disk4]
Type=0
[Disk5]
Type=0
[Disk6]
Type=0
[Disk7]
Type=0
[Disk8]
Type=0
[Disk9]
Type=0
[CF7]
BIOS=
Disk=.\cf7Disk.img
Size=134217728
[emulation]
AVIFilename=C:\Classic99.AVI
throttlemode=0
fast16bitram=0
maxcpf=50000
overdrive=50
enableSpeedKeys=0
enableEscape=1
pauseinactive=0
ctrlaltreset=0
invertcaps=1
speechenabled=1
system=1
slowdown_keyboard=1
ps2keyboard=1
sams_enabled=1
sams_size=3
enableAltF4=1
enableF10Menu=1
enableINIWrite=1
bankedConsoleGROMs=1
[joysticks]
active=1
joy1mode=0
joy1xaxis=0
joy1yaxis=1
joy1btns=-1
joy1minX=16384
joy1minY=16384
joy1maxX=49152
joy1maxY=49152
joy2mode=1
joy2xaxis=0
joy2yaxis=1
joy2btns=-1
joy2minX=16384
joy2minY=16384
joy2maxX=49152
joy2maxY=49152
[roms]
cartgroup=2
cartidx=0
[video]
FilterMode=2
frameskip=0
heatmapfadespeed=25
hzRate=60
MaintainAspect=1
EnableF18A=1
Enable80Col=1
Enable128k=0
InterleaveGPU=1
StretchMode=2
Flicker=1
ScreenScale=-1
ScreenX=552
ScreenY=459
LockFullScreen=0
topX=844
topY=460
[debug]
ScrambleRam=0
CorruptDSKRAM=0
enableDebugOpcodes=0
[tvfilter]
hue=100
saturation=100
contrast=100
brightness=100
sharpness=100
scanlines=1
[TIPISim]
URI1=
URI2=
URI3=
TipiDirSort=FIRST
TipiAuto=off
TipiTz=Emu/Classic99
TipiSSID=
TipiPSK=
TipiName=TIPISim
[LastDiskMRU]
MRU1=
MRU2=
MRU3=
MRU4=
MRU5=
MRU6=
MRU7=
MRU8=
MRU9=
MRU10=
[LastPathMRU]
MRU1=
MRU2=
MRU3=
MRU4=
MRU5=
MRU6=
MRU7=
MRU8=
MRU9=
MRU10=
[LastCartMRU]
MRU1=
MRU2=
MRU3=
MRU4=
MRU5=
MRU6=
MRU7=
MRU8=
MRU9=
MRU10=
[usercart0]
name=Killer Caterpillar
rom0=8|0000|4000|killercater.bin

 

Link to comment
Share on other sites

On 5/11/2024 at 8:34 PM, Tursi said:

So getting it working. After drag and drop, Classic99 reports:

 

[34204] Loading file (D:\new\killercater.bin) from disk: Type 8, Bank 0, Address 0x0000, Length 0x4000
[34204] Loaded 16384 bytes, non-inverted, bank mask 0x1
[34204] Found ROM header in page 0, setting bank. NOT REALISTIC.

 

Everything you need for the INI file is right there in that first line:

I don't know if it's because I'm emulating a window's environment in linux or what but on mine I can't scroll in the left pane nor is it resizable.
image.thumb.png.5a4d4fbfdc8dd149915768d9f9a2ddfc.png

Link to comment
Share on other sites

Posted (edited)

Yeah it's clipping info off...I've never seen that "Type 8" in the debugger on carts that I know for sure are.
Am I missing something here regarding AMS mode 2? (There is no mention of AMS mode in the pdf. Is this a reference to sams?)  I just did a drag n drop of the bin. 2xxxxx ...ain't the right line for what I was doing just saw the 16384 which is 4000 in hex.
image.thumb.png.14919dd284cddc2d999fe6c5fa296737.png

killercater.bin

Edited by kat71753
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...