Felice [Lexaloffle Blog Feed]https://www.lexaloffle.com/bbs/?uid=12874 Problem with poke() return value <p>Hey <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>,</p> <p>Do I remember right? I think when I asked for state-changing funcs like color() or clip() to return the previous state, I'm pretty sure poke() (and its 2/4 friends) was one of them. Seems like it always returns 0 now.</p> <p>(Also, if it's meant to return the previous state, remember to return a tuple of old values if you're given a tuple of new values.)</p> https://www.lexaloffle.com/bbs/?tid=52199 https://www.lexaloffle.com/bbs/?tid=52199 Tue, 28 Mar 2023 12:49:32 UTC Bug: DRAW_TABS not actually in CONFIG (sort of) <p><a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a></p> <p>Okay, so the functionality is there, but you forgot to add it to the list you get if you type <code>config</code> by itself. Currently this is all you get:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>&gt; config config [setting] available settings: volume theme gif_len gif_reset_mode gif_scale screenshot_scale splore_filter tab_width</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>Might wanna check and make sure there aren't any other additions you've missed adding here.</p> https://www.lexaloffle.com/bbs/?tid=51472 https://www.lexaloffle.com/bbs/?tid=51472 Sat, 04 Feb 2023 08:48:05 UTC Bug: Exported app launches offscreen <p>Hey <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>,</p> <p>I tried exporting and running an app, didn't do anything special except to load up a working cart and type &quot;export blahblah.bin&quot; and then run the resulting executable from the blahblah.bin/windows/ folder, and the window came up offscreen.</p> <p>I used some tools and also some estimates to figure out where the app actually came up, and I'm pretty sure it's because I have a rather uncommon desktop arrangement.</p> <p>Here's an image showing my desktop arrangement from Windows' display settings, with all of the extra info I found/deduced annotated and the position of the exported app when it launches. I hope this helps you figure out where you, e.g. copy/pasted some math and flipped or repeated a coordinate:</p> <img style="margin-bottom:16px" border=0 src="/media/12874/pico-8_exported_app_bad_desktop_coords.png" alt="" /> <p>(sorry, it's hard to write with a mouse)</p> <p>Also, just in case it matters, I launched the app from a windows explorer window on the center/primary monitor.</p> <p>Let me know if I can offer up any more info to help you track this down.</p> https://www.lexaloffle.com/bbs/?tid=50935 https://www.lexaloffle.com/bbs/?tid=50935 Sun, 01 Jan 2023 09:28:35 UTC BBS Bug: @ breaks external URLs <p>The post formatter is putting the &quot;<a href="https://www.lexaloffle.com/bbs/?uid=48119"> <a href="https://www.lexaloffle.com/bbs/?uid=48119"> @User</a></a>&quot; concept at too high a priority. It screws up Mastodon links, and also adds an extra space for no reason I can tell. Edit: Even on this line, the &quot;<a href="https://www.lexaloffle.com/bbs/?uid=48119"> <a href="https://www.lexaloffle.com/bbs/?uid=48119"> @User</a></a>&quot; placeholder has an extra space in front of it that I didn't type.</p> <p>Here's a link to one of your posts, just pasted as plaintext, to use as an example of how garbled it can get:</p> <p><a href="https://mastodon.social/<a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a></a></a></a>/109507080931110623">https://mastodon.social/<a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a></a></a></a>/109507080931110623</a></p> <p>Here it is as an inline code blurb <code>https://mastodon.social/<a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a></a></a></a>/109507080931110623</code>.</p> <p>Here it is inside a code block:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>https://mastodon.social/<a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a></a></a></a>/109507080931110623</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>This is what I actually typed, as an image:</p> <img style="margin-bottom:16px" border=0 src="/media/12874/bbs_bug.png" alt="" /> https://www.lexaloffle.com/bbs/?tid=50914 https://www.lexaloffle.com/bbs/?tid=50914 Fri, 30 Dec 2022 20:30:49 UTC Suggestion: Better way to enter/exit puny mode <p>Just gonna repeat what I <a href="https://tinyurl.com/2xkwmu4m">said on mastodon</a>:</p> <hr /> <p><a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a><br /> I just had what MIGHT be a good idea. Emphasis on &quot;MIGHT&quot;.</p> <p>Currently PICO-8 does not honor the concept of insert/overwrite mode like DOS used to. Indeed, many programs don't.</p> <p>How about using the [Ins] key to toggle puny mode?</p> <p>This post was brought to you by <strong>People Like You and Me Who Hate Doing Ctrl-key Sequences&trade;</strong>.</p> <hr /> <p>Also it'd be nice if you followed this common PC editor convention so I won't need to fake it with AutoHotKey:</p> <p>shift-del = cut<br /> shift-Ins = paste<br /> ctrl-ins &nbsp; = copy</p> <p>So much easier to use on the fly. I learned this and never went back to ctrl-x/c/v.</p> https://www.lexaloffle.com/bbs/?tid=50913 https://www.lexaloffle.com/bbs/?tid=50913 Fri, 30 Dec 2022 20:18:11 UTC Suggestion: Once finalized, give us a poke() that swaps to Picotron palette <p>Hey <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>,</p> <p>I think it'd be really nice to allow us to swap in the 32-color Picotron palette, which has the 16-color PICO-8 palette plus the revised upper 16 colors that you've been carefully tweaking for Picotron's system palette.</p> <p>I'm gonna bet that the iteration you're doing with them to improve usefulness would be really nice for PICO-8 games, and would additionally homologize the two platforms with respect to color palettes.</p> <p>Maybe just a single bit somewhere that swaps out the secret palette for Picotron's 16..31 colors?</p> <p>Or, I suppose, you could subdivide one of the two ranges. You'd still want an enable bit though, since people rely on index bits 4,5,6 not mattering.</p> <p>In fact, what the enable bit could do would be to switch to using the same indices 0..31 Picotron uses, instead of 0..15 and 128..143 on PICO-8, and then that's just the Picotron system palette. Basically a Picotron-palette mode.</p> <p>That'd make using the extra colors a lot less cumbersome than using the current secret palette, though the original secret palette could still live above 128 at the same time too, in which case all the enable bit would do would be to put picotron_pal[16..31] into pico8_pal[16..31] and everything else would remain the same.</p> <p>I dunno, just throwing out ideas here. What do you think? Does any of this sound reasonable?</p> https://www.lexaloffle.com/bbs/?tid=50584 https://www.lexaloffle.com/bbs/?tid=50584 Sat, 10 Dec 2022 02:29:01 UTC `config draw_tabs 1` would be nice <p>Yo <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>,</p> <p>It'd be nice if <code>draw_tabs</code> were one of the options in the <code>config</code> command.</p> <p>Indeed, it would probably be a good idea to do a once-over on the whole config.txt and see what else would be good to add to the command.</p> <p>I say this because someone noted on Discord that there's no way to make tab characters visible on the edu version. Probably among other things that people on the edu version would benefit from.</p> <p>Personally, I love visible tab characters, so I want everyone to have the option to try them.</p> <p><em>Edit: as requested below, for anyone unsure what I'm talking about, here's a sample image with <code>draw_tabs</code> set to 1 (and also <code>tab_width</code> set to 2). Note the wine-colored vertical line at the left edge of the tab characters, which also neatly masquerade as scope guides.</em></p> <img style="margin-bottom:16px" border=0 src="/media/12874/untitled_8_0.png" alt="" /> <hr /> <p>(Also edit: Woo, BBS thread #50000.)</p> https://www.lexaloffle.com/bbs/?tid=50000 https://www.lexaloffle.com/bbs/?tid=50000 Tue, 01 Nov 2022 13:33:30 UTC Token cost imbalance in declarations <p>It's not intuitive that these two blobs of code have different token costs, even though they do exactly the same thing:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>local a = 1 -- 3 tokens: a, =, 1 local b -- 1 token: b b = 1 -- +3 tokens b, =, 1 -&gt; total 4 tokens</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>I think the disconnect here is that the <code>b</code> in <code>local b</code> is being treated in the cost analysis as a variable reference, which it isn't, because the variable isn't referenced or assigned. It's just forward-declaring a conceptual attribute of the variable (its name), like the zero-cost <code>local</code> keyword does (its scope).</p> <p>The reason why this bothers me is that I often find myself doing stupid stuff so I can do tuple assignments to save a token, which makes my code ugly. Gross stuff like re-using existing vars or function args, rather than declaring a new local, so I can put them all on the same tuple-assigning line without having to split out a new token-stealing &quot;local&quot; declaration that wouldn't work inline with the tuple assignment.</p> <p>Here's a really-contrived example you'd never actually write, but hey, I need an example:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>function if_period_at_start_move_to_end( s ) assert(#s &gt;= 2) local p -- this forward declaration is necessary p, s = s[1], sub(s, 2) -- because we can't mix declare-assign with re-assign here if p == &quot;.&quot; then -- put it where it should be s = s..p else -- phew it wasn't a period, put it back s = p..s end return s end</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>Granted I could simply use <em>two</em> new vars when I take the potential period off of the front of the string, thereby allowing myself to merge the <code>local</code> declaration into the tuple assignment, but I guess that just feels like stack clutter to me. I know, nit-picky, but still... it's the little things.</p> <p>Anyway, unless there's some reason why it would be <em>bad</em> to nix the cost of an empty declaration, would this be an acceptable tweak? I did try to think of some harm or abuse that could come of being able to forward-declare a bazillion locals for free, but the only problem I could see would be in the head of the author who did it.</p> <p>And, like... at heart, the argument is just that <code>local a = 1</code> and <code>local a; a = 1</code> are functionally identical, which I'd hope would be enough in the first place. The rest of the above is just me trying even harder to make a case which I think is already made.</p> https://www.lexaloffle.com/bbs/?tid=49933 https://www.lexaloffle.com/bbs/?tid=49933 Thu, 27 Oct 2022 14:20:59 UTC Indexing a string out of bounds should return nil <p>Yo <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>,</p> <p>I realize returning <code>nil</code> out of bounds is less &quot;friendly&quot;-seeming, but after reading another <a href="https://www.lexaloffle.com/bbs/?pid=118912#p">post</a> in here, I realized it's way more useful.</p> <p>For one thing, it should make this work:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>plain_text = &quot;my thing that is mine&quot; label = &quot;&quot; for c in all(plain_text) do if c == ' ' then label ..= '_' else label ..= c end end print( label ) -- &quot;my_thing_that_is_mine&quot;</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>(Right now it never stops because the iterator keeps seeing <code>&quot;&quot;</code> instead of the <code>nil</code> it needs to terminate.)</p> <p>And for another, returning a nil is much more likely to alert a programmer that their code is probably malfunctioning than returning an empty string. Accessing out of bounds is <em>usually</em> erroneous and should therefore trigger errors.</p> <p>I realize some apps are probably already abusing the fact that you get an empty string when referencing past the end of the string, but really that's a bad programming pattern to be teaching people anyway. It's lazy, you should know where the end of the string is and stop there instead of expecting the OS/API to be your nanny and stop you from walking off of a cliff.</p> <p>Presumably this should apply to negative offsets as well, meaning negative offsets big enough to go back past the start of the string.</p> https://www.lexaloffle.com/bbs/?tid=49902 https://www.lexaloffle.com/bbs/?tid=49902 Tue, 25 Oct 2022 00:37:59 UTC Web player needs a volume control <p><a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a></p> <p>Every now and then I get directed to a BBS post with a cart that I genuinely to see, but which is making my headphones screech into my ears because it's so loud.</p> <p>Thing is, I already have both my system volume and my app-specific browser volume set to sensible levels for all other content, so I can't reasonably dial down the volume pre-emptively.</p> <p>Unfortunately, sometimes it's appropriate for a game to do something loud, albeit <em>briefly</em>, so I wouldn't expect you to limit it in the player either.</p> <p>Really, I think the solution is to have a slider of some sort on the web player. Even if it's limited to 8 different levels, like PICO-8 is internally, that'd help.</p> <p>Maybe if the user right-clicks (or presses and holds) on the speaker icon, it pops up a slider that can be adjusted?</p> <p>I dunno if it should be persistent and/or global. For reference, Youtube seems to be both, i.e. the most recent change you made becomes the default for the next video, regardless of how many windows you have open with different settings.</p> <p>Thanks!</p> https://www.lexaloffle.com/bbs/?tid=47853 https://www.lexaloffle.com/bbs/?tid=47853 Wed, 18 May 2022 06:30:49 UTC Unbalanced API: pairs vs. ipairs <p><a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a></p> <p>Hey! Remember when I suggested putting <code>next</code> in the globals, since we could get to it anyway by doing <code>next=pairs{}</code>? You did! And that's been great!</p> <p>Would it be okay to get <code>inext</code> the same way? It seems to be present, since I can get it by (similarly) doing <code>inext=ipairs{}</code>, and it seems to work the same way, just limited to index,value instead of key,value.</p> <p>It's just not <em>officially</em> exposed.</p> <p>I'm asking because there's a token saved when you switch from the first to the second implementation here:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>for k,v in pairs(t) do ... end for i,v in ipairs(t) do ... end -- these are a little less clear to the reader but they work the same and save a token for k,v in next,t do ... end for i,v in inext,t do ... end</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>Technically it also shaves a couple of cycles off of the loop setup by inlining the return tuple from pairs()/ipairs(), but it's really the token savings that would be handy in some cases.</p> https://www.lexaloffle.com/bbs/?tid=47314 https://www.lexaloffle.com/bbs/?tid=47314 Sat, 09 Apr 2022 09:47:03 UTC Bug? Table stringifies differently if it has a metatable <p>I don't know if this is expected behavior, but I thought I should ask:</p> <img style="margin-bottom:16px" border=0 src="/media/12874/metatable.png" alt="" /> <p>Is it expected that stringifying the table var/ref will give different results when it has a (blank?) metatable attached?</p> https://www.lexaloffle.com/bbs/?tid=47165 https://www.lexaloffle.com/bbs/?tid=47165 Wed, 30 Mar 2022 18:59:54 UTC PICO-8 should NOT receive input when it's not the focused window <p>&gt; <em>Changed: Controller inputs are accepted even when PICO-8 is not the foreground application</em></p> <p>PLEASE change this back. This is totally counter to how apps are supposed to work in a windowing environment. If an app doesn't have focus, the whole <em>point</em> is that it's not the one receiving input.</p> <p>This is causing problems for me already because I can't safely pause a PICO-8 game while I play something else that uses a controller.</p> https://www.lexaloffle.com/bbs/?tid=46362 https://www.lexaloffle.com/bbs/?tid=46362 Sat, 29 Jan 2022 11:11:28 UTC Hitomezashi w/ Voronoi cells <p>I saw <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>'s <a href="https://twitter.com/lexaloffle/status/1477189236919255040?s=20">tweetcart</a> and wanted to fiddle with it to produce something like the pattern on <a href="https://twitter.com/lexaloffle/status/1477192868645466117?s=20">the bag</a> he showed in the thread. I use Voronoi cells to apply multiple patterns to each image.</p> <p>Unfortunately, with the limited resolution, our eyes can't pick out patterns unless they are at least half the size of the screen and very regular, so I had to use a limited number of cells with a reduced amount of randomness in each pattern. It sorta works, but it'd be way more effective on a hi-res screen with more cells.</p> <p> <table><tr><td> <a href="/bbs/?pid=104012#p"> <img src="/bbs/thumbs/pico8_rajadadaji-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=104012#p"> zep's hitomezashi with voronoi cells</a><br><br> by <a href="/bbs/?uid=12874"> Felice</a> <br><br><br> <a href="/bbs/?pid=104012#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=45948 https://www.lexaloffle.com/bbs/?tid=45948 Sat, 01 Jan 2022 12:28:51 UTC Suggestion: &quot;backups&quot; command <p>Yo <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>,</p> <p>On discord and here on the BBS, we get a lot of people who basically need to get to the auto-backup of a cart they've lost somehow. It'd spare a lot of time writing blurbs like <a href="https://www.lexaloffle.com/bbs/?pid=95617#p">this</a> if people could simply type &quot;backups&quot; and have it work like the &quot;folder&quot; command except it drops them in the 'backups' folder instead of 'carts'.</p> https://www.lexaloffle.com/bbs/?tid=44075 https://www.lexaloffle.com/bbs/?tid=44075 Tue, 03 Aug 2021 16:39:43 UTC API isn't quite consistent <p>In all but one case I can think of, PICO-8 specifies screen rectangles as X1,Y1-X2,Y2 (inclusive).</p> <p>The case where it doesn't is <strong>clip(x,y,w,h)</strong>.</p> <p>This has always bugged me. But worse, I noticed recently that the virtual hardware registers for the clip rect are actually set up like the other API calls: X1,Y1-X2,Y2 (inclusive), which means the API is actually translating between the paradigms.</p> <p>Now I realize <strong>clip()</strong> can't suddenly change to work the other way, but...</p> <p>What if we had a new command next to it called <strong>clp(x1,y1,x2,y2)</strong> that worked the same as everything else, worked like the virtual hardware, returned the same values you'd get by peeking the virtual hardware registers, etc., and simply marked <strong>clip()</strong> as deprecated, much like <strong>mapdraw()</strong> is deprecated?</p> <p>It would hardly be the only abbreviated API call, e.g. <strong>sgn()</strong>.</p> <p>What do you think, <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>?</p> https://www.lexaloffle.com/bbs/?tid=43962 https://www.lexaloffle.com/bbs/?tid=43962 Tue, 27 Jul 2021 09:18:08 UTC tostr() can only do decimal and hex <p>Right now, <strong>tostr(n)</strong> converts to decimal, and <strong>tostr(n,anything_except_nil_or_false)</strong> converts to hex.</p> <p>Could it use the optional second arg as a base if it's a number? e.g.</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>&gt;?tostr(255) 255 &gt;?tostr(255,false) 255 &gt;?tostr(255,true) 0x00ff.0000 &gt;?tostr(255,16) 0x00ff.0000 &gt;?tostr(255,10) 255 &gt;?tostr(255,2) 0b0000000011111111.0000000000000000</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>For the sake of simplicity, you could limit it to the bases the parser can read. I think that's just decimal, hex, and binary.</p> https://www.lexaloffle.com/bbs/?tid=43845 https://www.lexaloffle.com/bbs/?tid=43845 Fri, 16 Jul 2021 14:06:27 UTC Dev tools <p><em>&quot;Are you there <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>? It's me again, <del>Margaret</del> Felice.&quot;</em></p> <p>I was thinking about how the option to show additional screens could open up the ability to write <em>on-target</em> dev tools to complement the existing IDE, and yet we're not really seeing any of that (yet).</p> <p>I don't think it's a big deal that these additional screens are officially unsupported and you have to alter the pico8.exe command line to use them at all, because only a dev needs dev tools, and devs know how to alter command lines. I don't think that's why.</p> <p>I think the problem with dev tools and debug libraries comes in the form of the token limit.</p> <p>Any and all dev tools are going to take up tokens, and once you go past 8192 tokens, your app <em>can't even launch.</em> So someone with a nearly-finished app that's utilizing most or all of the allowed tokens is going to be absolutely unable to use any form of dev tool, debugging library, or even just <strong>print()</strong> debugging.</p> <p>So...</p> <p><strong>Would it be possible to add a <em>command-line</em> option to increase the limit from 8K to, let's say, 32K tokens?</strong></p> <p>e.g. <strong>pico8.exe -dev_mode</strong></p> <p>That's similar to the 1:4 retail-vs-devkit RAM ratio on a PS2 devkit, for instance: 32MB vs 128MB. We had that extra RAM to hold debug libs, extra sanity-checking code, trace logs, etc., and it was absolutely <em>invaluable.</em></p> <p>And, most notably, this would <em>only</em> work when run from a proper <strong>pico8.exe</strong> with a command-line option set, meaning it is NOT supported under normal conditions and will NOT work in an exported/.png app, maintaining PICO-8's cozy limitations under normal circumstances.</p> <p>Oh, and note that you should also increase the Lua heap to 8MB in this mode, btw. Or more. More code means more data.</p> <hr /> <p>Afterthought: This also might encourage people to write stuff that will, in turn, give you ideas to improve PICO-8, Voxatron, or whatever comes after. In fact, the reason why I'm posting about this is that someone on the Discord mentioned that some of the Respriter ideas may have worked their way back into PICO-8. Synergy is food for the dev's soul!</p> https://www.lexaloffle.com/bbs/?tid=43341 https://www.lexaloffle.com/bbs/?tid=43341 Mon, 14 Jun 2021 21:46:05 UTC BBS Previews don't match forum posts <p>I just discovered there's &quot;&gt; ...&quot; quote block feature.</p> <p>Except there isn't...?</p> <p>If I do this:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre>this is my introduction &gt; this is my quote this is my response</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>I get this in the preview:</p> <img style="margin-bottom:16px" border=0 src="/media/12874/bbsquote.png" alt="" /> <p>But when I click <strong>[Publish]</strong> it comes out like this:</p> <img style="margin-bottom:16px" border=0 src="/media/12874/bbsquote2.png" alt="" /> <p>Also, if this feature is intended to work, it should be in the <strong>[Formatting Help]</strong> helpbox.</p> https://www.lexaloffle.com/bbs/?tid=43176 https://www.lexaloffle.com/bbs/?tid=43176 Thu, 03 Jun 2021 06:17:26 UTC Missing BBS Category <p>Hey <a href="https://www.lexaloffle.com/bbs/?uid=1"> @zep</a>,</p> <p>There are a lot of people who come here and learn to code by modding existing carts, and personally I think iterating on someone else's project is a fantastic way to learn stuff (I do it too), so I'd never want to discourage it, but sometimes it floods the BBS too, especially when someone does a workshop or class where everyone does it.</p> <p>Could we get a <strong>Mods</strong> category under <strong>Cartridges</strong>?</p> <img style="margin-bottom:16px" border=0 src="/media/12874/mods_cat.png" alt="" /> <p>That also might let you curate that kind of cartridge a little better, since a lot of them are only slightly different from the original, or indeed might not even work properly, and don't really belong in Splore, even though it's useful for junior programmers to share their work with each other here on the BBS and bounce ideas back and forth and so on.</p> https://www.lexaloffle.com/bbs/?tid=42946 https://www.lexaloffle.com/bbs/?tid=42946 Wed, 19 May 2021 18:23:06 UTC