NESICIDE V1.011 for real this time...
Moderator: Moderators
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
NESICIDE V1.011 for real this time...
V1.011
My website is back online but I'm still working on transitioning it. I think I'll stick with the Google site for the file sharing, as I like the interface.
ChangeLog:
V1.011
Added Tile Editor that can be used to create tiles of sizes from 8x8, 8x16, up to 128x128. Tile Editor includes
many common "paint program" tools like: pencil tool, line tool, hollow/filled box tools, paint bucket tool,
selection-drag/copy/erase tool, rotate clockwise/counterclockwise tools, and flip horizontal/vertical tools. Tiles
that are big enough to contain multiple attribute-block segments (ie bigger than 16x16) will adjust the attributes
of any conflicting pixels whenever necessary. The full 16-color attribute table is available to paint with. The
only tool that behaves a bit differently in the "conflict resolution" is the selection-drag/copy/erase tool. Since
it is possible to select an arbitrary portion of the image it is thus *impossible* to resolve attribute conflicts from
moving this arbitrary chunk around the rest of the image. Thus, instead of the image adjusting to the selected region, the selected region adjusts to the local Attributes of the image. Attributes can be fixed with the familiar "paint attributes"
tool. Created tiles can be added to Graphics Banks items to be used in ROMs. Also, any created tiles, including any
loaded binary files (PNGs) can be used to paint any portion of any other tile by selecting the tile from the tile list
and drawing with it. I think I might rework how the tile-drawing works to make it tool-dependent, but for right now
the tile-drawing just lets you paint any-size rectangles of the tile at 8x8-pixel grid resolution.
My website is back online but I'm still working on transitioning it. I think I'll stick with the Google site for the file sharing, as I like the interface.
ChangeLog:
V1.011
Added Tile Editor that can be used to create tiles of sizes from 8x8, 8x16, up to 128x128. Tile Editor includes
many common "paint program" tools like: pencil tool, line tool, hollow/filled box tools, paint bucket tool,
selection-drag/copy/erase tool, rotate clockwise/counterclockwise tools, and flip horizontal/vertical tools. Tiles
that are big enough to contain multiple attribute-block segments (ie bigger than 16x16) will adjust the attributes
of any conflicting pixels whenever necessary. The full 16-color attribute table is available to paint with. The
only tool that behaves a bit differently in the "conflict resolution" is the selection-drag/copy/erase tool. Since
it is possible to select an arbitrary portion of the image it is thus *impossible* to resolve attribute conflicts from
moving this arbitrary chunk around the rest of the image. Thus, instead of the image adjusting to the selected region, the selected region adjusts to the local Attributes of the image. Attributes can be fixed with the familiar "paint attributes"
tool. Created tiles can be added to Graphics Banks items to be used in ROMs. Also, any created tiles, including any
loaded binary files (PNGs) can be used to paint any portion of any other tile by selecting the tile from the tile list
and drawing with it. I think I might rework how the tile-drawing works to make it tool-dependent, but for right now
the tile-drawing just lets you paint any-size rectangles of the tile at 8x8-pixel grid resolution.
Thanks for the new version! Still cannot get the built-in emulator to work somehow..
Uninstalled the earlier NESICIDE and installed the latest on Windows 7 32-bit.
Left the GNU Make and cc65 from the previous install.
I unzipped the Tepples.zip example to:
C:\Program Files\NESICIDE\Projects\Tepples
I could open and compile the binary just fine. FCEU runs it.
NESICIDE reports this:
Loading ROM...
Reading NES executable from: tepples.nes
Reading debug information from: tepples.dbg
Error:tepples.dbg(1): This is an old version of the debug info format that is no longer supported. Version found = 1.2, version supported = 2.0
Load failed.
Uninstalled the earlier NESICIDE and installed the latest on Windows 7 32-bit.
Left the GNU Make and cc65 from the previous install.
I unzipped the Tepples.zip example to:
C:\Program Files\NESICIDE\Projects\Tepples
I could open and compile the binary just fine. FCEU runs it.
NESICIDE reports this:
Loading ROM...
Reading NES executable from: tepples.nes
Reading debug information from: tepples.dbg
Error:tepples.dbg(1): This is an old version of the debug info format that is no longer supported. Version found = 1.2, version supported = 2.0
Load failed.
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
You'll want to grab the cc65 snapshot I uploaded to my site. Uz is making changes to CC65...the snapshot on my site is the current one that NESICIDE is compatible with.slobu wrote: NESICIDE reports this:
Loading ROM...
Reading NES executable from: tepples.nes
Reading debug information from: tepples.dbg
Error:tepples.dbg(1): This is an old version of the debug info format that is no longer supported. Version found = 1.2, version supported = 2.0
Load failed.
It is the "cc65-snapshot-2.13.9.20110905-1.rar" file here.
EDIT: I also noticed there's a compile error with the latest CC65 in the Tepples project. Line 333 of src/main.s should be changed to:
Code: Select all
and #<~$40Uninstalled old cc65 and installed your new version. Overwrote the old Tepples folder with the new one. Got a strange error involving pads.o but I hit "Clean project" and that went away. It compiles and starts in the emulator now! You da man cpow.
I hope you don't mind. I'm not a C programmer but I should be good for calling out dead-end user gotchas and bugs
I hope you don't mind. I'm not a C programmer but I should be good for calling out dead-end user gotchas and bugs
cpow wrote:You'll want to grab the cc65 snapshot I uploaded to my site. Uz is making changes to CC65...the snapshot on my site is the current one that NESICIDE is compatible with.slobu wrote: NESICIDE reports this:
Loading ROM...
Reading NES executable from: tepples.nes
Reading debug information from: tepples.dbg
Error:tepples.dbg(1): This is an old version of the debug info format that is no longer supported. Version found = 1.2, version supported = 2.0
Load failed.
It is the "cc65-snapshot-2.13.9.20110905-1.rar" file here.
EDIT: I also noticed there's a compile error with the latest CC65 in the Tepples project. Line 333 of src/main.s should be changed to:
I have fixed it and uploaded the updated Tepples project package.Code: Select all
and #<~$40
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
Sorry slobu, I missed your post. Glad to hear it's working now. Of course I don't mind user feedback of any kind. I love squashing bugs! 8)slobu wrote:Uninstalled old cc65 and installed your new version. Overwrote the old Tepples folder with the new one. Got a strange error involving pads.o but I hit "Clean project" and that went away. It compiles and starts in the emulator now! You da man cpow.
I hope you don't mind. I'm not a C programmer but I should be good for calling out dead-end user gotchas and bugs![]()
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
NESICIDE V1.012
V1.012
Improvements to Tile Editor, such as: hollow/filled circle tool; improved select/drag tool with resizeable drag edges;
usage of clipboard for cut/copy/paste [Ctrl+X/Ctrl+C/Ctrl+V] to or from other programs. Support for undo/redo is also
included but there are a few minor quirks I'm still trying to work out.
Improvements to Tile Editor, such as: hollow/filled circle tool; improved select/drag tool with resizeable drag edges;
usage of clipboard for cut/copy/paste [Ctrl+X/Ctrl+C/Ctrl+V] to or from other programs. Support for undo/redo is also
included but there are a few minor quirks I'm still trying to work out.
Here are some points:
* For the Drawing Tool (pen) it would be nice if it actually drew lines between the points, so there would be no gaps when mouse is moved fast.
* The installer is giving the "uninstall the old version first" message again. A ZIP package would make updating easier.
* I think it's misleading to call palette sets "attribute tables", as that's also what the last 64 bytes of a name table are generally called.
* Is there any way to use the tile data at this time, other than Export to PNG?
* For the Drawing Tool (pen) it would be nice if it actually drew lines between the points, so there would be no gaps when mouse is moved fast.
* The installer is giving the "uninstall the old version first" message again. A ZIP package would make updating easier.
* I think it's misleading to call palette sets "attribute tables", as that's also what the last 64 bytes of a name table are generally called.
* Is there any way to use the tile data at this time, other than Export to PNG?
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
Thanks.thefox wrote:Here are some points:
* For the Drawing Tool (pen) it would be nice if it actually drew lines between the points, so there would be no gaps when mouse is moved fast.
* The installer is giving the "uninstall the old version first" message again. A ZIP package would make updating easier.
* I think it's misleading to call palette sets "attribute tables", as that's also what the last 64 bytes of a name table are generally called.
* Is there any way to use the tile data at this time, other than Export to PNG?
For the drawing tool, I'll make it continuous. No problem.
I'm uploading a nesicide.zip now.
I agree now that you point it out that "Attribute Table" may be misleading. Maybe, since in this tool I don't have individual palettes as an item, I could just rename it to "Palette", meaning the array of 13 colors that can be used for backgrounds or sprites.
You can include any created Tiles in Graphics Banks...simply create a Graphics Bank and start typing...the names of the Tiles or Binary Files you can include in the Graphics Bank will pop up. Currently it just blasts the whole bloody metatile into the Graphics Bank [no redundant tile removal optimizations, for example].
Oddly enough, you can also "paint" with any Graphics Bank onto a Tile...which is a bit circular but I was having fun with it. Not sure it's really useful.
I noticed this (hence my comment about exporting to PNG). Really what I meant with the question was, what's the purpose of Graphics Bank and how would one use it in a project (i.e. how to include it in a source, or is that even possible)?cpow wrote:You can include any created Tiles in Graphics Banks...simply create a Graphics Bank and start typing...the names of the Tiles or Binary Files you can include in the Graphics Bank will pop up. Currently it just blasts the whole bloody metatile into the Graphics Bank [no redundant tile removal optimizations, for example].
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
In the Project Properties, Graphics Builder tab. If you select CHR Data in CHR-ROM and define one or more Graphics Banks those Graphics Banks will compile into the .chr that gets appended to your ROM.thefox wrote:I noticed this (hence my comment about exporting to PNG). Really what I meant with the question was, what's the purpose of Graphics Bank and how would one use it in a project (i.e. how to include it in a source, or is that even possible)?cpow wrote:You can include any created Tiles in Graphics Banks...simply create a Graphics Bank and start typing...the names of the Tiles or Binary Files you can include in the Graphics Bank will pop up. Currently it just blasts the whole bloody metatile into the Graphics Bank [no redundant tile removal optimizations, for example].
If you want CHR-RAM instead, select CHR Data in CHR-RAM. Then you can still create a Graphics Bank but instead of being appended to your ROM the resultant .chr file can be incbin'd by your source.
Or you can set it to CHR Data in CHR-RAM (or ROM) and provide your own .chr file and not bother with Tiles, Binary Files, or Graphics Banks.
Ah OK, I see how it works now. You should maybe consider padding the CHR file to 8K, and if we're being strict, it might be a good idea to force the size to be a power of two as well (8K, 16K, 32K, ...).cpow wrote:In the Project Properties, Graphics Builder tab. If you select CHR Data in CHR-ROM and define one or more Graphics Banks those Graphics Banks will compile into the .chr that gets appended to your ROM.
If you want CHR-RAM instead, select CHR Data in CHR-RAM. Then you can still create a Graphics Bank but instead of being appended to your ROM the resultant .chr file can be incbin'd by your source.
Or you can set it to CHR Data in CHR-RAM (or ROM) and provide your own .chr file and not bother with Tiles, Binary Files, or Graphics Banks.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
My .sav format is XML and contains much of the machine state, including the SRAM. But only the SRAM is loaded at the moment. I suppose that most .sav files are just binary dumps of SRAM?Bananmos wrote:I finally decded to give NESICIDE a try, it seems to have grown quite a few cool features by now!
But I can't seem to get the built-in emulator debugger to read my .sav file, even though I set the battery bit in the iNES header. Is this supposed to work yet?
- cpow
- NESICIDE developer
- Posts: 1097
- Joined: Mon Oct 13, 2008 7:55 pm
- Location: Minneapolis, MN
- Contact:
Right. Because the earlier NESICIDE saved the entire state but I ditched that for the moment but didn't change the save file format.tepples wrote:Yes, most .sav and .srm files are just raw dumps of the SRAM or serial EEPROM in a game that has a battery bit. What you're saving in XML is more like a "saved state" or a "keyframe" in a keypress movie.