Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - Create adventure games for the SMS using Twine

Reply to topic Goto page Previous  1, 2, 3, 4
Author Message
  • Joined: 05 Sep 2013
  • Posts: 3757
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Thu Jan 24, 2019 4:19 pm
solved. long story short: install latest Wine, not what comes with your distro.
  View user's profile Send private message Visit poster's website
  • Joined: 29 Mar 2012
  • Posts: 879
  • Location: Spain
Reply with quote
Post Posted: Thu Jan 24, 2019 9:33 pm
The Dll's I neede to add were:
msvcp120.dll
msvcr120.dll
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 3757
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Fri Jan 25, 2019 10:32 am
thanks! - I didn't even need to add any DLLs once I set up latest version.

unfortunately it doesn't change the file name extension in the save dialog when I select the export format - OK, not a big problem, I can type that myself, I'm just wondering if anyone is experiencing the same quirk.
  View user's profile Send private message Visit poster's website
  • Joined: 29 Mar 2012
  • Posts: 879
  • Location: Spain
Reply with quote
Post Posted: Thu Jan 31, 2019 9:54 am
Btw, I've started playing a bit with Twine and SAM, and I'm having quite strange results. Depending on content (descriptions), sometimes I get random hangs, or garbage tiles in the text part (I thought it could be related to images, so I changed every image by blank placeholders). There's something I don't know about how to use Twine (I'm only using variables, links, and music, image and pause macros)
  View user's profile Send private message
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Thu Mar 21, 2019 2:21 am
New troubles... just started working on this again and now I'm getting this inexplicable error:

Images.txt.inc:52: DIRECTIVE_ERROR: Out of section numbers. Please start a new f
ile.
Images.txt.inc:52: ERROR: Couldn't parse ".section".
LOAD_FILE_DATA: Could not open file "object.o".
The system cannot find the file specified.
Press any key to continue . . .


How in the hell can it be out of section numbers? Right now I have literally only nine images, and it's set up to make a 2MB ROM. I'm very confused; can anybody help?

EDIT: Might this be related to the fact that there are many, many calls to PLACEHOLDER.png in the scripts right now in place of where I intended art to go in the final? It only shows a single entry of PLACEHOLDER in the "Images.txt" file generated in the project's /sam/ folder, but I dunno... kinda just grasping at straws trying to figure out what's wrong.
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14682
  • Location: London
Reply with quote
Post Posted: Thu Mar 21, 2019 7:51 am
That seems to be a WLA DX limit, maybe it has a 255 sections per file limit due to the way it stores the data.

Edit: it seems to have a 32-bit section ID so I'm not sure what is happening here. What version of WLA DX is being used?
  View user's profile Send private message Visit poster's website
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Fri Apr 19, 2019 10:14 am
I can't believe it took me nearly a month to answer a simple question but that's just how it is apparently. According to the program when I run it in a command prompt, it's WLA Z80 Macro Assembler v9.3.
  View user's profile Send private message
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Thu May 09, 2019 4:39 am
Nobody's taken a look at this problem in almost a month so I decided to get a programmer friend involved. However, while he's managed to brute force the compiler code into successfully outputting my code into an .sms ROM file, it won't run in any emulator. I'm at the end of my rope. I've put too much effort into this game to just give up, so here, have literally my entire C:\twee2sam\ folder. This is everything from compiler to various games I've messed around with making. Somebody has to be able to figure out what the problem is if they have literally everything as it is on my end.

My twee2sam: https://www.mediafire.com/file/m088bq3kc2zbc9c/my_twee2sam_workchain.7z/file

Note that he was able to determine that T&JTheForest.epsgmod is too big; I didn't know this because by the time I'd added it, it started refusing to compile altogether. If somebody can get it working, just replace that with another one and it should work.

EDIT: My friend's come to the conclusion that this is indeed related to the WLA Z80 compiler and a hard limitation therein. If that's the case, can this even be fixed?

EDIT #2: It turns out this is all because Scripts.lists.txt.inc has too many segments. He was able to combine a few sections at the end of the file manually and was able to get it to compile, though I've not tested it to see if this still works.
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 3757
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Thu May 09, 2019 8:08 am
Zero X. Diamond wrote
It turns out this is all because Scripts.lists.txt.inc has too many segments.


you mean sections? how many of them you've got? and what happens if you split that file in two?
  View user's profile Send private message Visit poster's website
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Thu May 09, 2019 7:10 pm
I can't even find the .inc files myself; this was a discovery by my programmer buddy. He says the issue can't be resolved by splitting up the .inc files though, as the problem is that the sections are cumulative across all files because of the way they're handled. All of them get added to game.asm, therefore if scripts, music and images total up to over 255 sections, it won't compile. Apart from finding some way to get around that hard limit, whether by splitting up game.asm somehow or by making larger sections, what other solutions could there be?
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14682
  • Location: London
Reply with quote
Post Posted: Thu May 09, 2019 7:57 pm
I think it produces a lot of sections and then assembles by including them all together. If you instead assemble them separately and link together then you can bypass this limit. Even better would be to raise the limit itself.

Edit: using the current version of WLA DX I have no trouble to make a file with 10,000 sections (although it is a bit slow to compile). I'll try with your project next...

Edit 2: using that version of WLA DX solves the section limit issue, but you have other issues. You need to make sure all your epsgmod files are less than 16KB.
  View user's profile Send private message Visit poster's website
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Fri May 10, 2019 3:54 am
Okay, so where did you get your WLA-DX binaries? I got mine from this page and trying to run Compile.bat with the November 2018 binaries results in this happening:

INCLUDE_FILE: Error opening file "object.o".

WLALINK GB-Z80/Z80/6502/65C02/6510/65816/HUC6280/SPC-700 WLA Macro Assembler Lin
ker v5.10a
Written by Ville Helin in 2000-2008 - In GitHub since 2014: https://github.com/v
helin/wla-dx
$VER: WLALINK 5.10a (12.10.2018)

USAGE: ..\..\..\sam\bin\wla\wlalink.exe [OPTIONS] <LINK FILE> <OUTPUT FILE>

Options:
-b  Program file output
-d  Discard unreferenced sections
-i  Write list files
-r  ROM file output (default)
-s  Write also a NO$GMB symbol file
-S  Write also a WLA symbol file
-A  Add address-to-line mapping data to WLA symbol file
-v  Verbose messages
-L [DIR]  Library directory

The system cannot find the file specified.
Press any key to continue . . .


I'm assuming that, once again, this is something I'm doing wrong. If you built your own from the GitHub source, would you mind just posting them for me?
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14682
  • Location: London
Reply with quote
Post Posted: Fri May 10, 2019 6:10 am
The WLA DX command line parameters changes so the twee2sam batch file needs to be changed. I'll make a zip with the necessary stuff in it once I get your thing compiling.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14682
  • Location: London
Reply with quote
Post Posted: Fri May 10, 2019 6:33 pm
Here you go. Extract it over the "sam" folder, it should replace all three files.

Your project built (I didn't test it) after I removed this:
<<music "T&JMovieTheForest.epsgmod">>

from GFSavesXmas.twee. This file is >16KB and as a result isn't supported. I'm guessing its a converted VGM file. I think SAM should probably be updated to use PSGLib these days...
sam.zip (139.33 KB)

  View user's profile Send private message Visit poster's website
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Sun May 12, 2019 9:23 pm
It seems your compiled version of WLA-DX is looking for some Visual C++ debug DLLs that I don't have. However, using your .bat and the compiled version I linked earlier, it works! Thank you so so much for your help, Maxim.
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14682
  • Location: London
Reply with quote
Post Posted: Sun May 12, 2019 10:18 pm
Whoops, I hadn't intended to build in debug mode. Glad you figured it out.
  View user's profile Send private message Visit poster's website
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Tue Jun 18, 2019 11:00 pm
Everything is working swimmingly; for once this isn't me shrieking "oh god something else has broken," which I'm sure is a great change of pace. However, I'm curious: is there any way to store a text string as a variable? I'd like to do a gag where you're going from one place to another where the city name is given at random, but I'd like to do so without having to create dozens of separate passages just in order to change the names of the city.

Realistically, what I'd like to do is have it pick a random number from like 1 to 25 or something and, depending on the number, have it set the city name variable from a list of possibles and then just print it into the story with a <<print>> command. However, my tests with just attempting to set a variable to a string have been... uh, catastrophic? When it attempted to parse the script in-game, the screen just started cycling through a bunch of random garbage endlessly and I couldn't get past it.

So I guess I'm saying is there a way to do this, or do I just have to bite the bullet and make a shitload of individual passages for each possible city name?
  View user's profile Send private message
  • Joined: 25 Feb 2006
  • Posts: 863
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Jun 18, 2019 11:08 pm
I'm glad to know that you are making progress. ;)

Unfortunately, the engine does not currently support string variables...
  View user's profile Send private message Visit poster's website
  • Joined: 27 Jan 2014
  • Posts: 28
Reply with quote
Post Posted: Wed Jun 19, 2019 12:21 am
Oh well, text doesn't take up that much space on its own so I can just do the tried and true method involving a whole bunch of passages. Thanks for the quick reply at any rate!
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 3757
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Wed Jun 19, 2019 7:44 am
haroldoop wrote
Unfortunately, the engine does not currently support string variables...


Does it supports array of strings constants?
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14682
  • Location: London
Reply with quote
Post Posted: Mon Jan 11, 2021 3:53 pm
I think it would be a useful addition to allow people to substitute a new font. It seems fairly embedded in SAM though...
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 863
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Mon Jan 11, 2021 9:11 pm
Maxim wrote
I think it would be a useful addition to allow people to substitute a new font. It seems fairly embedded in SAM though...


Sounds like a nice idea; the font is imported on "game.asm":


.section "Data" FREE
    PaletteData:
    .db $00,$3f ; Black, White
    PaletteDataEnd:

   FontData:
     .include "..\..\..\sam\lib\BBC Micro font.inc"
.ends


It could be modified by editing the include, but given the target audience, it would certainly be nice to do that in a more user-friendly way.

I opened the relevant issue on Github https://github.com/haroldo-ok/twee2sam/issues/33
  View user's profile Send private message Visit poster's website
Reply to topic Goto page Previous  1, 2, 3, 4



Back to the top of this page

Back to SMS Power!