Author Topic: 8BP  (Read 34718 times)

0 Members and 1 Guest are viewing this topic.

Offline jjaranda13

  • Dev
  • CPC464
  • *****
  • Posts: 43
  • Country: es
    • 8BP (8 bits de poder)
    • Awards
Re: 8BP
« Reply #100 on: 01:28, 27 July 20 »
Hi good afternoon.
the inventions for the cpc don't stop there.
thank you.
i have a cpc6128.
how can you use your programs if i want to have the range 0x4000 to 0x7fff myself?
So if the sdcc programs start at 0x8000?
does your basic also work with 0x8000?


greeting




well...not easy question. 8BP starts at 24000, and you want to use up to 32000. Therefore you have an overlap of 8KB. It is possible to move these 8KB from 24000 to another memory position. However it must be done carefully. It is completelly possible but imply to select the bunch of functions from 24000 to 32000 and assemble them in another address. If there is a function that part of it falls into 32000 and other part falls on another memory area, you can solve it by a simple JP assembler instruction.


in summary: it is possible, and simple to get what you want, but must be done carefully.












Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #101 on: 10:00, 27 July 20 »

thank you.

I don't want to influence the program in a very complicated way.
that should be built by the inventor in such a way that only the start address has to be entered differently than is usual with other programs: sdcc, ccz80 ++, cpctelera etc.


Offline jjaranda13

  • Dev
  • CPC464
  • *****
  • Posts: 43
  • Country: es
    • 8BP (8 bits de poder)
    • Awards
Re: 8BP
« Reply #102 on: 23:33, 28 July 20 »
thank you.

I don't want to influence the program in a very complicated way.
that should be built by the inventor in such a way that only the start address has to be entered differently than is usual with other programs: sdcc, ccz80 ++, cpctelera etc.


yes, it could be an option for C programmers. In 8BP, the start address is the maximum possible (24000) in order to allow BASIC programmers to have 24KB of BASIC and the rest for 8BP library and music and images and layout or scroll map. But of course, for c programmers it could be possible another arrangement of the memory. Other tools like cpctelera are not ready for BASIC programmers. Regarding sdcc, it is a compiler which in fact is used in 8BP for C programming. Anyway, you are right, it could be possible but it is not a disadvantage to "force" programmers to use the first 24KB to allocate their code.


I will think on the easiest way to give this additional degree of freedom to c programmers


Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #103 on: 09:49, 29 July 20 »
this is a bank switch for expansion memory after $4000- $7fff

greeting

Online XeNoMoRPH

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.110
  • Country: es
  • " ... in space no one , can hear you scream ... "
    • https://auamstrad.es/
    • Awards
Re: 8BP
« Reply #104 on: 09:48, 26 September 20 »
your amstrad news source in spanish language : https://auamstrad.es

Online XeNoMoRPH

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.110
  • Country: es
  • " ... in space no one , can hear you scream ... "
    • https://auamstrad.es/
    • Awards
Re: 8BP
« Reply #105 on: 08:49, 22 October 20 »
your amstrad news source in spanish language : https://auamstrad.es

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 17.053
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
    • Awards
Re: 8BP
« Reply #106 on: 10:10, 22 October 20 »
Looks very nice for BASIC of course, but I'm waiting to see what happens when the end of level 1 approaches :D

Online XeNoMoRPH

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.110
  • Country: es
  • " ... in space no one , can hear you scream ... "
    • https://auamstrad.es/
    • Awards
Re: 8BP
« Reply #107 on: 18:48, 06 January 21 »
your amstrad news source in spanish language : https://auamstrad.es

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #108 on: 10:31, 07 January 21 »

hello, good job.
i would like more extensions for c and some interesting examples to learn with c.


spagetticocde in this way should go away.
another type of programming without lines in basic

---------------------------

340 l=0:naut[l*6+0]=100:naut[l*6+1]=160:naut[l*6+2]=220:naut[l*6+3]=-60:naut[l*6+4]=-90:naut[l*6+5]=-40:'level 0
350 l=1:naut[l*6+0]=400:naut[l*6+1]=200:naut[l*6+2]=300:naut[l*6+3]=250:naut[l*6+4]=-300:naut[l*6+5]=-300:'level 1
351 l=2:naut[l*6+0]=400:naut[l*6+1]=200:naut[l*6+2]=300:naut[l*6+3]=-400:naut[l*6+4]=0:naut[l*6+5]=-100:'level 2
352 l=3:naut[l*6+0]=400:naut[l*6+1]=400:naut[l*6+2]=50:naut[l*6+3]=50:naut[l*6+4]=-200:naut[l*6+5]=-200:'level 3
353 l=4:naut[l*6+0]=400:naut[l*6+1]=200:naut[l*6+2]=50:naut[l*6+3]=-300:naut[l*6+4]=-200:naut[l*6+5]=-400:'level 4
355 l=5:naut[l*6+0]=-500:naut[l*6+1]=-500:naut[l*6+2]=550:naut[l*6+3]=0:naut[l*6+4]=-300:naut[l*6+5]=550:'level 5
--------------------------
greeting
« Last Edit: 10:35, 07 January 21 by funkheld »

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #109 on: 10:50, 07 January 21 »

hello,
echo  "*     LOAD "ciclo.bin", 20000                             *"


LOAD "ciclo.bin",20000

is error.

greeting---------------------------------

echo.
echo.
echo  "***********************************************************"
echo  "*                   FIN DEL PROCESO                       *"
echo  "*  ASEGURATE DE QUE NO EXCEDES LA DIRECCION 24000         *"
echo  "* es la (highest address) de la transformacion ihx en bin *"
echo  "*                                                         *"
echo  "* se ha generado ciclo.dsk y dentro esta ciclo.bin        *"
echo  "*                                                         *"
echo  "* Pasos para cargarlo en el amstrad                       *"
echo  "* 1) carga o ensambla 8BP, con tus graficos, musica etc   *"
echo  "* 2) carga tu juego BASIC                                 *"
echo  "* 3) ejecuta LOAD "ciclo.bin", 20000                      *"
echo  "* para invocar a tu programa o rutina simplemente:        *"
echo  "* call <direccion de main en fichero ciclo.map>           *"
echo  "*                                                         *"
echo  "*  Para mover ciclo.bin de ciclo.dsk a otro disco debes   *"
echo  "*  conocer su longitud:                                   *"
echo  "*   longitud=Highest address - Lowest address             *"
echo  "*   lo cargas desde ciclo.dsk                             *"
echo  "*     LOAD "ciclo.bin", 20000                             *"
echo  "*   Y salvas en el disco donde esta tu juego              *"
echo  "*     SAVE "ciclo.bin",b,20000,longitud                   *"
echo  "***********************************************************"
--------------------------------------
« Last Edit: 11:55, 07 January 21 by Gryzor »

Offline jjaranda13

  • Dev
  • CPC464
  • *****
  • Posts: 43
  • Country: es
    • 8BP (8 bits de poder)
    • Awards
Re: 8BP
« Reply #110 on: 21:22, 07 January 21 »
hello, good job.
i would like more extensions for c and some interesting examples to learn with c.


spagetticocde in this way should go away.
another type of programming without lines in basic

---------------------------

340 l=0:naut[l*6+0]=100:naut[l*6+1]=160:naut[l*6+2]=220:naut[l*6+3]=-60:naut[l*6+4]=-90:naut[l*6+5]=-40:'level 0
350 l=1:naut[l*6+0]=400:naut[l*6+1]=200:naut[l*6+2]=300:naut[l*6+3]=250:naut[l*6+4]=-300:naut[l*6+5]=-300:'level 1
351 l=2:naut[l*6+0]=400:naut[l*6+1]=200:naut[l*6+2]=300:naut[l*6+3]=-400:naut[l*6+4]=0:naut[l*6+5]=-100:'level 2
352 l=3:naut[l*6+0]=400:naut[l*6+1]=400:naut[l*6+2]=50:naut[l*6+3]=50:naut[l*6+4]=-200:naut[l*6+5]=-200:'level 3
353 l=4:naut[l*6+0]=400:naut[l*6+1]=200:naut[l*6+2]=50:naut[l*6+3]=-300:naut[l*6+4]=-200:naut[l*6+5]=-400:'level 4
355 l=5:naut[l*6+0]=-500:naut[l*6+1]=-500:naut[l*6+2]=550:naut[l*6+3]=0:naut[l*6+4]=-300:naut[l*6+5]=550:'level 5
--------------------------
greeting


hi funkheld


you are right, these lines are difucult to understand but they are only data. They are the data of position of each astronaut at each level. The coordinates x,y of each astronaut. Therefore 2 values x 3 astronauts= 6 values per level. Thats all.


regarding C examples, I take note, and I will do it in coming videotutorials and next updates of manual. Good point


Offline jjaranda13

  • Dev
  • CPC464
  • *****
  • Posts: 43
  • Country: es
    • 8BP (8 bits de poder)
    • Awards
Re: 8BP
« Reply #111 on: 21:24, 07 January 21 »
hello,
echo  "*     LOAD "ciclo.bin", 20000                             *"


LOAD "ciclo.bin",20000

is error.






Have you copy the ciclo.bin to the .dsk? after the creation of ciclo.bin you must copy the file into the .dsk where is located the loader.bas






Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #112 on: 16:18, 08 January 21 »
hello thanks for the help.


greeting.

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #113 on: 21:02, 08 January 21 »

hello, why do the asm only start with winape?
winape is out of date, javacpc is the program.


they should also be easily adaptable to pasmo etc.


greeting

Offline GUNHED

  • 6128 Plus
  • ******
  • Posts: 2.806
  • Country: de
  • Reincarnation of TFM
    • FutureOS - The quickest OS for the CPC and Plus
    • Awards
Re: 8BP
« Reply #114 on: 21:43, 08 January 21 »
If would be great to be able to use WinApe and JavaCPC indeed.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2021.01.24)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.07.15)

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #115 on: 13:53, 10 January 21 »
Hi good afternoon.

In almost all 8bp demos there are many identical poke / peek that are responsible for the graphics.
it would be nice if this poke / peek could be explained.
the confusion starts with the long lines of poke / peek.

It's not the amount of graphics games that is decisive, but the clear explanation of the poke / peek.

There is a proverb:
less is more.
"weniger ist mehr"


thanks.
greeting

Offline eto

  • Supporter
  • 464 Plus
  • *
  • Posts: 436
  • Country: de
    • Awards
Re: 8BP
« Reply #116 on: 14:04, 10 January 21 »
Is there a current version of the documentation in English?


If not, would it make sense to have the documentation as a Wiki/Website rather than a PDF? Then we could at least easily use Google Translate.




Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #117 on: 19:42, 10 January 21 »

how big(byte) can a C-program be from sdcc for 8bp?


thanks.

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #118 on: 20:47, 12 January 21 »

Hi good afternoon.


is basic 3 "ccz80 ++" and "ccz80" ???


greeting

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #119 on: 20:51, 12 January 21 »

Hi good afternoon.
at the moment i am having a hard time with the asm programs that are active in a game. the asm programs for this are written in a confusing manner and are difficult to follow.
I hope that the shortage will be remedied soon.


small complete programs should also be created soon.
you don't feel like 8bp because there are no experiences that work for us.


greeting

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #120 on: 00:55, 13 January 21 »
cpc basic 3 uses this ccz80 to compile. there is the successor ccz80 ++ if you use the cpc basic3, you can also familiarize yourself with the ccz80.it's not difficult.

greeting

Offline jjaranda13

  • Dev
  • CPC464
  • *****
  • Posts: 43
  • Country: es
    • 8BP (8 bits de poder)
    • Awards
Re: 8BP
« Reply #121 on: 17:25, 13 January 21 »
how big(byte) can a C-program be from sdcc for 8bp?


thanks.


hi funkheld
The same as Basic, you can use the free 24kB for C code and the rest for graphics, music, etc in the same way as BASIC
However, you  need the 2KB wrapper which takes around 2kB, therefore you have 22KB free for your code + 8.5KB for graphics +1.4KB for music
« Last Edit: 17:31, 13 January 21 by jjaranda13 »

Offline jjaranda13

  • Dev
  • CPC464
  • *****
  • Posts: 43
  • Country: es
    • 8BP (8 bits de poder)
    • Awards
Re: 8BP
« Reply #122 on: 17:29, 13 January 21 »
cpc basic 3 uses this ccz80 to compile. there is the successor ccz80 ++ if you use the cpc basic3, you can also familiarize yourself with the ccz80.it's not difficult.

greeting


I dont recommend basic3 because takes 16KB for internal things. The compiled program also is bigger in size than BASIC version (around 5kB) and therefore you lose around 20KB

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #123 on: 20:28, 13 January 21 »
I also advise against using basic3.if you use this ccz80 or ccz80 ++ alone, the programs have few bytes and the start address can also be relocated when compiling. ccz80 and ccz80 ++ can be expanded as required with your own asm commands and you can also change the ccz80 and ccz80 ++ own asm commands.

greeting
« Last Edit: 20:31, 13 January 21 by funkheld »

Offline funkheld

  • 464 Plus
  • *****
  • Posts: 386
    • Awards
Re: 8BP
« Reply #124 on: 20:35, 13 January 21 »
you can enlarge this ciclo.c as you like, eg up to 10k compiled code?


greeting