{ Main Page } - { Amiga Department } - { Cats } - { Add a Comment }
COMMODORE C128 DEPARTMENT |
{ C128 BASIC, C128 Built-In ML Monitor } |
{ Assembler & Editor Edass 128 } |
Part 00 | Part 01 | Part 02 | Part 03 | Part 04 | Part 05 | Part 06 | Part 07 |
Part 08 | Part 09 | Part 0A | Part 0B | Part 0C | Part 0D | Part 0E | Part 0F |
Part 10 | Part 11 | Part 12 | Part 13 | Part 14 | Part 15 | Part 16 | Part 17 |
Part 19 | Part 1A | Part 1B | Part 1C | Part 1D | Part 1E | Part 1F | Part 20 |
Name | Files | Date | Read Source | Download |
---|---|---|---|---|
NiceScrolling | .txt | 21.01.2024 | 1 | |
![]() |
||||
Many ways to do this... | ||||
Here is my version of a single character smooth scrolling written directly with C128 ML Monitor. You can extend this as you wish, maybe even to write a message from right to left, like how people are usually using smooth scrolling. It is all more or less self-explained. Checking if the end of the line is reached, change character and start from scratch. $d016, bit 0,1,2 are rolling everything. from 0 to 7. If 8 is reached, i do reset it to 0, move the character 1 field forward, delete the old one and repeat everything... It is an endless loop! |
||||
Name | Source | Date | Read Source | Download |
ScreenClearFill | .txt | 21.01.2024 | 1 | |
![]() |
||||
Nice little assembler routine! | ||||
A very little bit different assembler routine to clear the screen or fill it with the character and also with the color of your choice. Short and easy to understand. Nevertheless, also a commented version is included. Written directly in Machine Language Monitor of C128. |
||||
Name | Source | Date | Read Source | Download |
AssemblyMix | .txt | 27.01.2024 | 1 | |
![]() |
![]() |
![]() |
||
Learning process people... | ||||
Practice to be a master on day { or never hehe }. Find here few listings playing with the INX, INY, INC, ADC etc. commands. This here isn't going to win a special reward, but it'll help you to understand assembly basics better. Conclusion: everything we learn and understand about it, is useful. |
||||
Name | Source | Date | Read Source | Download |
Branching | .txt | 28.01.2024 | 1 | |
![]() |
![]() |
![]() |
![]() |
![]() |
Branching is a mystery in assembly! | ||||
In the next few series, branching is subject number one. In the most books i read, some are telling you need just 4 { BEQ, BNE, BCC, BCS } branch commands { out of 8 }. Four remaining are BMI, BPL, BVS, BVC and unnecessary? Is it so? Can the job be done to 100% only with 50% power??? It's going to be an interesting branching adventure! Btw. the source code is explained as good as possible. It's not much lines, but a lot of things can be done with it with just a little modification/adaptation. I used BEQ and BCC branching only. BEQ to set/increment the high byte, and BCC to fill the line with 40 characters and to count the screen lines { not to exceed 25 lines and crash the system }. |
||||
Name | Source | Date | Read Source | Download |
Branching | .txt | 31.01.2024 | 1 | |
![]() |
||||
Branching in assembly language | ||||
Nothing can work properly without branching. That's why it is important to know how and when branching commands are used. In different books it is stated that only 4 commands are needed { BNE, BEQ, BCS, BCC } to be able to write assembly programms. With given examples, you get explained how branching is working and why it is branched in first place. I am also explaining the remaining branching commands the best i can because some aren't so clear and not many examples are existing, like those branching commands aren't really necessary. But still, you'll see that that isn't quite so... As always, practice, try, made errors, learn and understand. |
||||
Name | Source | Date | Read Source | Download |
PaI | .txt | 31.01.2024 | 1 | Disk |
![]() |
![]() |
![]() |
||
PossibilitiesAndIdeas | ||||
Here some ideas in regard of bringing text to the screen using only C128 ML Monitor. Check the screenshots for further help and assistant. I would say not so difficult once when you do this couple of times. |
||||
Name | Source | Date | Read Source | Download |
Random | .txt | 01.02.2024 | 1 | Disk |
![]() |
![]() |
![]() |
![]() |
![]() |
I bet you didn't know this! | ||||
Random numbers in assembly? Give that to a beginner like i am... Let's go, not giving up for sure! As first, the first listing was okay and working, on C64, but not on C128. Why is that? I found out, that C128 is handling this completelly diferrently and actually needs just a fraction of the C64 code to give some nice random results. Which were used wisely as you can see in attached listing and disk. And we learned something again. Even if Sound & Graphic Departement are supposed to be the same on C64 and C128, C128 in C64 mode, isn't the same anymore in terms of VIC Chip. |
||||
Name | Source | Date | Read Source | Download |
RND, not 255 | .txt | 02.02.2024 | 1 | |
![]() |
||||
Again random numbers, but not 255 { 256 incl. 0 } | ||||
Exactly, we will do less than 255 numbers, meaning you can choose how many numbers you want. Still things open, like how to choose only 10 numbers. When i tried that, it didn't actually worked out. Only #$07, #$0f was doing fine. But nevermind, with cmp, beq you can address just the numbers you need to branch to whereever you want. You can have uneven numbers and even numbers { you never know what you'll need someday } |
||||
Name | Source | Date | Read Source | Download |
HexToDecimal | .txt | 04.02.2024 | 1 | |
![]() |
||||
Hex- To Decimal Converter | ||||
Random numbers are converted to decimal numbers. Using this routine, you can actually convert a hexadecimal number from any location to decimal. Maybe you can need it for something. |
||||
Name | Source | Date | Read Source | Download |
HiResGraphic | .txt | 19.02.2024 | 123 | |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
HiResGraphic in Assembler | ||||
Talking about high resolution graphic and throwing 320x200 pixels on a table is a thing haha. But 40 years earlier that was a big deal. C128 has really nice Basic commands to deal with high resolution graphic, but it is slow. Unfortunatelly, informations about high resolution graphic are as good as not available for C128 if it has to be done in assembler. Even all fancy Super Graphics on C128 Books are working with Basic and if you can find somehthing in assembler, it's mostly VDC oriented and it is not very informational. I can't tell why, but could it be C64 is to blame? That being said, it took me a while to even find out how to change and then also use a drawing color. Anyway, compared to Basic, this is fast, but it need more researches and persistance to achieve even small results because there is as good so no really usable documentation available despite all the existing books for C128 graphics!!! This is not about drawing circles etc., it's more pixel art. Conclusion: the more you know, the more tasty it gets, hahaha... That's why i am including what i could find out. It will sure help to get on board faster and have fun instead of frustration. And it is fun when you see it in action. |
||||
Name | Source | Date | Read Source | Download |
LowResGraphic | .txt, .pdf, .d64 | 07.03.2024 | 1 2 3 | .d64 1, 2 |
![]() |
![]() |
![]() |
![]() |
![]() |
Multi-Color Low Resolution Graphic in Assembler { Tile Editor update to version 1.0.1 } | ||||
Well, this one really took a small eternity if such thing is even existing. Multi-Color on C128 is in Low Resolution Graphic mode 3 and 4 is a huge pain in the butt. You have to fight yourself through a jungle of mysteries and just maybe you will see some light with huge portion of luck. |
||||
Name | Source | Date | Read Source | Download |
GfxMCFullScrn | .txt, .d64 | 09.03.2024 | 1 | .d64 1 |
![]() |
||||
Full Screen Low Resolution Multi Color Pixel Graphic { what a title, hehe } | ||||
In addion to above examples of Multi Color graphic here is an example of how to make a full screen and avoid the limitations of branch commands (127 bytes). Not taking much, few JMP's and that's it. On .d64 disk, GfxFullScrn.d64 is Edass 128 source file { which is also listed in .txt file } |
||||
Name | Source | Date | Read Source | Download |
DemoMCGfx | txt, .d64 | 14.03.2024 | 1 | .d64 1 |
![]() |
![]() |
![]() |
![]() |
|
Full Screen Example Tiles for C128 MultiColor Graphic { Low Resolution, Mode 3 } | ||||
If you followed the last few entries then there is not much to say about this here. This Demo is FullScreen, all 25 lines Graphic Mode 3, MultiColor... |
||||
Name | Source | Date | Read Source | Download |
ColRAM $1C00 | .txt, .d64, .pdf | 16.03.2024 | 1 2 | .d64 1 |
![]() |
![]() |
![]() |
![]() |
![]() |
ColorRAM $1C00 | ||||
Changing colors using ColorRam from $1C00 and left/right side of the byte to have an individual color where you need it in multicolor low resolution graphic on C128! Guess that will be then about this subject { i actaully added some free tiles, see below, 17.03.2024} |
||||
Name | Source | Date | Read Source | Download |
TilesCollection | .txt, .d64, .pdf | 17.03.2024 | 1 2 | .d64 1 |
![]() |
||||
10 Tiles ready to go! {LowRes Graphic and MutliColor Text Mode compatible} | ||||
Some tiles to be used in LowResolution {Graphic 3 & 4}, but you can use them also in Text Mode {not Graphic 0}, but by activating MultiColor TextMode {check older entries on this website}. Also some correction were added to the TileEditor110A, see links above in previous entry. I am using just 4 colors, however on TileEditor110A disk, included is a Source Code for Edass 128 where you can use byte data and have up to 15 individual colors for the tiles. Included is a text doc and .pdf file where you can see all tiles. Note also the colors used to have tiles correctly rendered. |
||||
Name | Source | Date | Read Source | Download |
TileEditor2 | .txt, .d64 | 19.03.2024 | 1 | .d64 1 |
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
||
Tile Editor 2.0.0 { Work in Progress } | ||||
SPRDEF { Sprite Definition Editor } is great, but then also i cannot make 4x3 tile size without sweating! That's why i decided to make this little TileEditor 2.0.0 to achieve exactly that by using the screen editor. First version will be only single color, later multicolor, but if you followed the previous informations in regard of colors in C128 Graphic Modes, then you know you can have also in standard modes more colors than one, limited, but still. I am sure some nice tiles can be created with this once it's ready... Well, willl take a while... So stick around! Update: 19.03.2024, 16:38 - This shit is actually working as you can see. You still can't do much with it {no data export}, but i am already happy with this achievement. Update: 20.03.2024, 12:26 - This is slowly getting to be fun. "BiGC128" is showing the latest progress. You can use whatever character you prefer to draw tiles. Also, you have all the great functions of the screen editor at your disposal. Update: 28.03.2024 - Switched from C128 Basic to assembly with Edass 128. It was a challenge, but i created a working version. Much more fun then with Basic {no, it's heavier!} For more info see the entry below and Basic Version source can be seen here. .d64 download here. With this i just wanted to have an idea of how it could be done.... This is now called TED 2.0, see below! |
||||
Name | Source | Date | Read Source | Download |
TED 2.0.0 | none | 28.03.2024 | 1 | .d64 1 |
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
TED 2.0.0 {WIP} | ||||
This is now made completelly in assembler! |
||||
Name | Source | Date | Read Source | Download |
>>>> PAGE 02 | ||||