Select a file to view its exact on-chain source. Sorted README → gnomod → sources → tests.
DirtyRows(since int64) string
GetHeight() int
GetWidth() int
MaxBatchSize() int
Owner() string
Paint(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, x int, y int, color int)
PaintBatch(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, pixels string)
Painted() int
Paints() int64
Palette() string
Pixel(x int, y int) int
Price() int64
Render(string) string
Revenue() int64
Rows(from int, to int) string
SetPrice(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, ugnot int64)
TransferOwnership(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, newOwner string)
Version() int64
Withdraw(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, to string, amount int64)
Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.
# Million Gno
A pay-per-pixel canvas. Pick a color, pay the price, own the pixel until someone repaints it. Payments go to the admin wallet, which paints for free.
| | |
|---|---|
| Size | 1250 x 800 |
| Price per pixel | 50000ugnot |
| Pixels painted | 5389 / 1000000 |
| Paint calls | 11 |
| Version | 11 |
| Revenue | 0ugnot |
| Admin | g1sw5xklxjjuv0yvuxy5f5s3l3mnj0nqq626a9wr |
## Palette
- 1: `#ffffff`
- 2: `#e4e4e4`
- 3: `#888888`
- 4: `#222222`
- 5: `#ffa7d1`
- 6: `#e50000`
- 7: `#e59500`
- 8: `#a06a42`
- 9: `#e5d900`
- 10: `#94e044`
- 11: `#02be01`
- 12: `#00d3dd`
- 13: `#0083c7`
- 14: `#cf6ee4`
- 15: `#820080`
## Paint
- [Paint one pixel](/r/g1sw5xklxjjuv0yvuxy5f5s3l3mnj0nqq626a9wr/million/v0$help&func=Paint): `Paint(x, y, color)` with `-send <price>ugnot`
- [Paint a batch](/r/g1sw5xklxjjuv0yvuxy5f5s3l3mnj0nqq626a9wr/million/v0$help&func=PaintBatch): `PaintBatch("x,y,color;x,y,color")` with `-send <price*count>ugnot`
vm/qrender output, sanitized (docs/render-security.md) and displayed in an empty-sandbox iframe — scripts, forms and popups cannot run. Links stay inert in-preview; right-click to open.